簡體   English   中英

這是一個鋸齒狀的數組聲明嗎?

[英]Is it a jagged array declaration?

你能解釋一下element數組聲明背后的語法嗎? 這是一個鋸齒狀的陣列嗎? 在這種情況下,什么是ValueType

 enum Color { Red = 1, Green, Blue }
 enum Theme { Dark = 1, Light, NotSure }

 public static void Main(string[] args)
 {
     var elements = new[]
     {
         new { Value = 1, Type = typeof(Color) },
         new { Value = 2, Type = typeof(Theme) },
         new { Value = 3, Type = typeof(Color) },
         new { Value = 1, Type = typeof(Theme) },
         new { Value = 2, Type = typeof(Color) },
     };

     foreach (var element in elements)
     {
         var enumValue = Enum.ToObject(element.Type, element.Value);
         Console.WriteLine($"{element.Type.Name}({element.Value}) = {enumValue}");
     }
 }

讓我們從內到外: elements數組的項目

   new { Value = 1, Type = typeof(Color) }

匿名的類型實例(具有兩個屬性Value類型的intType類型的Type ); 有關詳細信息,請參閱https://msdn.microsoft.com/en-us/library/bb397696(v=vs.90).aspx

elements數組

   var elements = new[] {
     new { Value = 1, Type = typeof(Color) },
     new { Value = 2, Type = typeof(Theme) },
     ... 
   };

是這種匿名類型實例的簡單1d數組

這是一個鋸齒狀的陣列嗎?

不。它是一個匿名對象的一維數組。

在這種情況下,什么是ValueType

匿名類的屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM