什么是C#中的ArraySystem.Object和System.Object之间的区别?

vrn*_*mar -1 c# arrays

我在包含不同类型对象的对象上创建了一个数组,并检查了每个元素的类型.然后将数组转换为List并检查每个元素的类型但结果是不同的?

object[] aobj = {"",4,2.5,7,new object()};
foreach (var element in aobj)
{
    Console.WriteLine("Type is Array"+element.GetType());
}


IList lsit = aobj as IList;

foreach (var element in lsit)
{
    Console.WriteLine("Type is in List " + element.GetType());
}
Run Code Online (Sandbox Code Playgroud)

输出:

在此输入图像描述

为什么会出现ArraySystem.ObjectSystem.Object?有什么不同 ?

Eri*_* J. 5

仔细查看输出代码

Console.WriteLine("Type is Array"+element.GetType());
Run Code Online (Sandbox Code Playgroud)

类型不是ArraySystem.String(等)."Array"一词来自您的代码.在Array之后缺少空格以使输出清洁.