空数组和空数组有什么区别?

如果未初始化int数组的各个元素,则默认情况下存储在其中的内容是什么?我显然发现其中有一个空数组或空数组。有什么区别,哪一个适用于我的第一个问题?

回答:

从技术上讲,没有 null数组 之类的东西;但是由于数组是对象,所以数组类型是引用类型(即:数组变量仅保存对数组的 引用

),这意味着数组变量可以null而不是实际指向数组:

int[] notAnArray = null;

一个 数组是零长度的阵列; 它没有元素:

int[] emptyArray = new int[0];

(并且 永远不能 有元素,因为数组的长度在创建后就不会改变)。

当您创建一个 空数组而不为其元素指定值时,它们默认为零值0,例如整数数组,null对象类型数组等。所以这:

int[] arrayOfThreeZeroes = new int[3];

与此相同:

int[] arrayOfThreeZeroes = { 0, 0, 0 };

(尽管这些值可以在以后重新分配;数组的长度不能更改,但是其元素可以更改)。

以上是 空数组和空数组有什么区别? 的全部内容, 来源链接: utcz.com/qa/411232.html

回到顶部