二维数组本质上也就是一维数组,只不过每个元素又是一个一维数组
二维数组的创建:
数据类型[ ] [ ] =new 数据类型[ 行数] [列数 ];
二维数组的初始化有两种:
(1)静态初始化(静态初始化,就是在创建一个二维数组时,给数组中的元素赋值)
比如 :int[ ] [ ] arr = {{1,2,3},{4,5,6}};
也可以写成:int[ ] [ ] arr=new int[ ] [ ]{{1,2,3},{4,5,6}};
注意:静态初始化二维数组时,要用花括号括起来。比如:
(2)动态初始化(即创建二维数组的变量,只指定行数和列数)
例如:int[ ] [ ] arr = new int[ 3] [ 4 ];
详讲:为什么说二维数组就是一个特殊的一维数组?
我们知道数组是引用类型数据,如果用System.out.println();输出是输出的地址。
上面的二维数组中,我们打印出了arr[0]和arr[1]的地址。
我们知道使用java提供的类Arrays中的toString()方法,可以把数组转为字符串,如果字符串中存储的是arr[0]和arr[1]的地址,那我们就可以得出二维数组就是一个特殊的一维数组的结论。
从代码的结果来看,打印出的字符串确实是arr[0]和arr[1]的地址。那么就说明了二维数组就是一个特殊的一维数组