隱含類型陣列 (C# 程式設計手冊)
您可以建立隱含型別的陣列,在其中陣列執行個體的型別是由陣列初始設定式中指定的項目推斷。 任何隱含型別變數的規則都適用於隱含型別陣列。 如需詳細資訊,請參閱隱含類型區域變數 (C# 程式設計手冊)。
隱含型別陣列通常是在查詢運算式中與匿名型別及物件和集合初始設定式一起使用。
下列範例顯示如何建立隱含型別陣列:
class ImplicitlyTypedArraySample
{
static void Main()
{
var a = new[] { 1, 10, 100, 1000 }; // int[]
var b = new[] { "hello", null, "world" }; // string[]
// single-dimension jagged array
var c = new[]
{
new[]{1,2,3,4},
new[]{5,6,7,8}
};
// jagged array of strings
var d = new[]
{
new[]{"Luca", "Mads", "Luke", "Dinesh"},
new[]{"Karen", "Suma", "Frances"}
};
}
}
在前述範例中,請注意隱含型別陣列中,初始化陳述式的左側不會使用方括號。 同時請注意,不規則陣列是使用 new [] 進行初始化,如同一維陣列。
物件初始設定式中的隱含型別陣列
建立包含陣列的匿名型別時,在型別的物件初始設定式中陣列必須是隱含型別。 在下列範例中,contacts 是匿名型別的隱含型別陣列,每個都包含名為 PhoneNumbers 的陣列。 請注意,var 關鍵字不會在物件初始設定式內部使用。
var contacts = new[]
{
new {
Name = " Eugene Zabokritski",
PhoneNumbers = new[] { "206-555-0108", "425-555-0001" }
},
new {
Name = " Hanying Feng",
PhoneNumbers = new[] { "650-555-0199" }
}
};