关于多维数组一点的小技巧

来源:互联网 发布:刮眉毛会变浓吗 知乎 编辑:程序博客网 时间:2024/04/28 17:27

数组在Java基础里面的运用还是蛮多的,之前在学习的过程中,发现了这么一个小问题

public class Test1 {    public static void main(String[] args) {        int[][] a = new int[10][11];        System.out.println("a.length="+a.length);        System.out.println("a[0].length="+a[0].length);    }}

输出的结果如下:

a.length=10
a[0].length=11

可以看到,多维数组和一维数组其实是一个鸟样,总的来说,并没有什么区别;
设置断点之后,可以看到a的值长成这样,完全可以把它当做一个一维数组去看:

[[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]

同样的a[0]:

[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

所以如果要深刻一点的理解这样的多维数组,那么多维数组,就像是俄罗斯套娃,一层一层的打开,里面其实都是一个样子,只是大小不同罢了。

0 0