JAVA数组中length的问题?
下面的程序
public class Tables {
public static void main(String[]args) {
final int TABLE_SIZE = 5;
int[][] table = new int[TABLE_SIZE][TABLE_SIZE];
int[] table2 = new int[TABLE_SIZE];
int a =table.length;
int b =table2.length;
System.out.println(a);
System.out.println(b);
}
}
都是输出 5
如上面程序里如何得到table的大小?arrays.length()到底返回什么属性?
------解决方案-------------------- public class temp {
public static void main(String[]args) {
final int TABLE_SIZE = 5;
final int TABLE_SIZE1 = 6 ;
int[][] table = new int[TABLE_SIZE1][TABLE_SIZE];
int[] table2 = new int[TABLE_SIZE];
int a =table.length;
int b =table2.length;
System.out.println(a);
System.out.println(b);
}
}
========================
是一是这个输出是什么你就知道到底是怎么一回事了。
------解决方案--------------------路过。我顶一下先。
------解决方案--------------------public class temp1 {
public static void main(String[]args) {
final int TABLE_SIZE = 5;
final int TABLE_SIZE1 = 6 ;
int[][] table = new int[TABLE_SIZE][TABLE_SIZE1];
int[] table2 = new int[TABLE_SIZE];
int a =table[0].length;
int b =table2.length;
System.out.println(a);
System.out.println(b);
}
}
这个程序能说明你的问题 希望吧
------解决方案--------------------学习了
------解决方案--------------------你改成getLength看看
------解决方案--------------------public static void main(String[] args) {
final int TABLE_SIZE = 5;
final int TABLE_SIZE1 = 6 ;
int[][] table = new int[TABLE_SIZE1][TABLE_SIZE];
int[] table2 = new int[TABLE_SIZE];
/*for (int i = 0; i < 6; i++) {
for (int j = 0; j < 5; j++) {
table[i][j]=0;
}
}*/
int a =table[1].length;
int b =table2.length;
int c = table.length;
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
输出的结果是5,5,6,好像都是每个数组的外层结构的引用的个数
------解决方案--------------------这个貌似是一个数学问题..
数组的长度就是其第一阶的值决定...(理论的语言说不上来)
------解决方案--------------------java的多维数组,并不是像一个二维表一样,而是数组的数组,也就是说建立一个数组a,在数组a中存放的每个元素又是一个数组,所以在计算a.length的时候计算的是数组a中存放了多少个数组的引用,在你的程序中table.length和table2.length的值都为5。
------解决方案--------------------二维数组相当于由一维数组为元素构成的一维数组,作为元素的数组长度可以是不固定的……