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

C# 3.0 隱式類型特性詳解(二):隱式類型化數組完整指南

     編輯:關於C語言

隱式類型化數組語法

使用 var arr = new[] { ... },編譯器從初始化列表推斷元素類型。要求所有元素隱式可轉換為單一最佳類型。

合法聲明示例


// 一維數組
var a = new[] { 1, 10, 100, 1000 };           // int[]
var b = new[] { "hello", null, "world" };     // string[]

// 交錯數組
var c = new[] 
{ 
    new[] { 1, 2, 3, 4 }, 
    new[] { 5, 6, 7, 8 } 
}; // int[][]

var d = new[] 
{ 
    new[] { "Luca", "Mads" }, 
    new[] { "Karen", "Suma" } 
}; // string[][]

類型推斷規則

  • 存在「最佳類型」,其他元素隱式轉換至該類型
  • new[] { 1, 2.5 } → double[] (int → double)
  • new[] { 1, "str" } ❌ 無共同基類型(除 object 外)
  • 數組協變性:new[] { new Derived(), new Base() } → Base[]

限制

  • 僅限區域變量聲明
  • 必須有初始化列表
  • 不能用於字段/屬性/參數/返回類型

總結

隱式類型化數組將 var 推斷能力延伸至數組聲明,配合對象初始化器、匿名類型,構成聲明式數據構建的完整語法鏈。掌握「最佳類型」推斷規則,避免混合不兼容元素導致編譯錯誤。

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