数组的定义和初始化
数组定义时,需要指定它的元素的类型,如果你想元素可以为任意类型,可以指定为 object 类型, 因为 .Net 和 C# 里面,所有类型都直接地或间接地从 Object 类型派生。
定义数组的基本形式是 type[] arrayName;
使用 nullable 类型的时候,根据需要,可以有 type?[] arrayName; 或 type[]? arrayName; 或 type?[]? arrayName; 等形式。
在定义数组的时候,如果不指定元素的初始值,系统会自动给它赋予元素的默认值。
一维数组
下面是两个一维数组的定义例子,当不指定初始化值时,系统自动初始化为默认值。
可以使用集合表达式(collection expression)来初始化数组的元素值。 集合表达式由开始的 '[' 和结尾的 ']' 以及中间的 ',' 构成。 集合表达式语法在 C# 12 引入,随 .NET 8 发布。
在版本 12 以前的 C#,可以使用对象表达式,它由开始的 '{' 和结尾的 '}' 以及中间的 ',' 构成。
例如
多维数组
二维数组用 [,] ,三维数组用 [,,] ,四维数组用 [,,,] 等等,例如
交错数组
交错数组可以理解为数组的数组,即外层数组的元素是数组,里层数组的长度可以不相等。交错数组用 [][] 表示。
数组的隐式类型声明
创建数组的时候,可以不指定元素类型,采用 new [] 形式,编译器根据代码自动推导出类型。例如下面的一些例子