锯齿状阵列的元素

时间:2017-02-09 18:30:33

标签: c# arrays value-type reference-type

在c#中,锯齿状数组的元素是“值类型”还是“引用类型”? 由于Jagged数组是数组数组,我想它应该是引用类型而不是值类型。 bc引用类型也可以具有空值。

1 个答案:

答案 0 :(得分:1)

术语锯齿状数组意味着您有一个数组类型的数组:

int[][] arr;

arr这里是一个类型为int[]的数组。所以是的,这是一个参考类型。

与所有引用类型一样,如果您不初始化外部数组的int[]元素,则它们为null

int[][] arr = new int[50][];
Console.WriteLine(arr[0] == null ? "null" : ? "not null");

给出

null

因此,初学者在初始化arr[0][0] = 5之前尝试分配arr[0] = new int[desiredlength]; 之类的东西是常见问题。