2015-07-21 30 views
-1

我在包含不同類型對象的對象上創建了一個數組,並檢查了每個元素的類型。然後將數組轉換爲列表並檢查每個元素的類型但是結果是不同的?在C#中ArraySystem.Object和System.Object有什麼區別?

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()); 
} 

輸出:

enter image description here

爲什麼會出現ArraySystem.ObjectSystem.Object?有什麼不同 ?

+4

「請告訴我差異「單詞」in「和第一個WriteLine語句中缺失的空格? – BoltClock

+0

_a簡單的印刷錯誤_... –

+0

對不起...我的壞 – vrnithinkumar

回答

5

在你的輸出代碼

Console.WriteLine("Type is Array"+element.GetType()); 

的類型不ArraySystem.String(等),仔細看。單詞「數組」來自您的代碼。您在Array之後缺少空格以使輸出變得乾淨。

+0

對不起.. 我的壞。 – vrnithinkumar

0

的問題是在你的代碼由於"Type is Array"之間,它的元素類型變化

Console.WriteLine("Type is Array "+element.GetType()); 

和你的輸出將得到糾正

&快樂的空間

由於編程