Java 数组分配

Java 数组分配,java,arrays,Java,Arrays,我不明白这是什么意思: int[] array = new int[0]; 这里分配了多少字节?或者内存中没有分配任何内容?下面是什么?这是一个零长度数组 分配多少字节是特定于平台的,但这里仍然有一个数组,只是一个很短的数组。通常,Java中的数组需要 fixed overhead + length * componentSize 字节(然后可能有一些填充) 还要注意的是,由于数组在Java中无法调整大小,并且零长度数组不能更新元素,因此这些元素是不可变的,在整个程序中实际上不需要它们的多

我不明白这是什么意思:

int[] array = new int[0];

这里分配了多少字节?或者内存中没有分配任何内容?下面是什么?

这是一个零长度数组

分配多少字节是特定于平台的,但这里仍然有一个数组,只是一个很短的数组。通常,Java中的数组需要

fixed overhead + length * componentSize 
字节(然后可能有一些填充)

还要注意的是,由于数组在Java中无法调整大小,并且零长度数组不能更新元素,因此这些元素是不可变的,在整个程序中实际上不需要它们的多个实例,因此可以使用静态单例,这样就节省了“固定开销”。

有关此项的用法,请参阅。