数组声明 - Java中的错误

时间:2012-07-13 01:30:00

标签: java

为什么

int arr[][]=new int[5][];

宣言完全没问题但是

int arr[][]=new int[][5]    

生成编译时错误?
请帮帮我。我无法理解为什么会这样?

1 个答案:

答案 0 :(得分:10)

int arr[][](更通常写为int[][] arr)是一个数组,其中每个元素都是对数组的引用。

new int[][5]意味着“创建一个未知长度的数组,其中每个元素都是对数组的引用,每个数组长度为5”。显然,这没有意义。

另一方面,new int[5][]表示“创建一个长度为5的数组,其中每个元素都是对数组的空引用”。