首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 3.0 隱式類型化數組:var + new[] 簡化數組聲明

     編輯:關於C語言

特性概覽

隱式類型化數組是 var 向數組聲明的延伸:使用 new[] 替代 new Type[],編譯器從初始化列表推斷元素類型。

語法示例


var intArray = new[] { 1, 2, 3, 4, 5 };           // int[]
var doubleArray = new[] { 3.14, 1.414 };          // double[]
var stringArray = new[] { "Hello", "World" };     // string[]

// 匿名類型數組:結合兩大特性
var anonArray = new[] 
{
    new { Name = "van's", Sex = false, Age = 22 },
    new { Name = "martin", Sex = true, Age = 23 }
}; // 匿名類型[]

推斷規則與限制

  • 所有元素必須隱式可轉換為單一最佳類型
  • new[] { 1, "str" } ❌ 編譯錯誤:無法推斷共同類型
  • 數組卻變性:new[] { new Derived(), new Base() } 推斷為 Base[]
  • 僅限區域變量聲明

實際運行驗證


Console.WriteLine(anonArray[0].Name); // 輸出:van's
// anonArray[0] 為強類型匿名對象,Name 屬性智能提示可用

總結

var arr = new[] { ... } 讓數組聲明與列表初始化一致,配合匿名類型可構建臨時強類型數組,極大簡化測試數據、LINQ 查詢投影、配置對象等場景的代碼量。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved