我是Java noob 。我现在不太了解这种语言(至少,不足以做复杂的事情),但我到了那里!
我知道你可以通过arr.length
来测试单维数组的长度,但是可以测试其他维度(在多维数组中)吗?
答案 0 :(得分:6)
是的,确实如此。显然,要测试第一个维度,您只需arr.length
。使用length
和该特定维度的[0]
元素测试后续维度。例如,考虑这个数组:
int[][][][] arr = new int[10][11][12][13];
测试......
第一维:arr.length;
第二维:arr[0].length;
第三维:arr.[0][0].length;
第四维:arr.[0][0][0].length;
答案 1 :(得分:6)
多维数组只是一个数组数组,数组中的每个数组都有不同的长度。即:
int arr[][] = new int[2][];
arr[0] = new int[5];
arr[1] = new int[10];
System.out.println(arr.length);
System.out.println(arr[0].length);
System.out.println(arr[1].length);
现在你有了一个二维数组。第一维(外部)可以称为arr
并且具有大小2.内部阵列可以被称为arr [0]和arr [1]并且分别具有长度5和10。由于每个都引用了普通的Java数组,因此您可以使用所有常规方法来访问它们。此外,由于我们通过将数组放入数组来创建多维数组,因此您可以拥有任意数量的维度,并通过索引到上面的某个维度来访问每个更高级别:arr[2][1][5][11][3][0][123][5][42][9][7]....length
答案 2 :(得分:2)
例如,假设是一个2D数组,您可以使用i
访问arr[i].length
th 内部数组的长度。
如果您还没看过,请查看Arrays (The Java™ Tutorials)。
答案 3 :(得分:1)
您可以直接引用要测试的尺寸来测试其他尺寸的其他尺寸。
例如,如果您在主要维度中有一个包含3个项目的二维数组,那么您可以使用arr [0] .length,arr [1] .length和arr [2]来确定每个数组的长度。 ]。长度。
下面的代码只是设置一个数组,然后验证长度是我们期望的长度。
public void testLength(){
//setup the array you are wanting to test
int[][] foo = new int[2][5];
// this just makes sure that we do get 2 dimensions within the primary
Assert.assertEquals(2,foo.length);
Assert.assertEquals(5,foo[0].length);
// change the array stored within foo[0]
foo[0]= new int[8];
Assert.assertEquals(8,foo[0].length);
}