比如我定义一个数组:
int[][] a = new int[][]{(1,2),{3,4}};
或
int[][] b = new int[][]{{1,2},{3,4}}怎样知道这个是几乘几维的数组呢?写一个函数可以用来动态分析
int[][] a = new int[][]{(1,2),{3,4}};
或
int[][] b = new int[][]{{1,2},{3,4}}怎样知道这个是几乘几维的数组呢?写一个函数可以用来动态分析
b.getClass().isArray 可以判断b是不是数组,如果是数组,再可以判断b的第一个元素是不是数组,依次判断。
就这样,假如我是一个n*2的数组,那么n如何确定?
Object obj = a;
while (obj != null && obj.getClass().isArray()) {
System.out.print(Array.getLength(obj) + ", ");
obj = Array.get(obj, 0);
}
Object obj = a;
while (obj != null && obj.getClass().isArray()) {
System.out.print(Array.getLength(obj) + ", ");
obj = Array.get(obj, 0);
}