【Java数组笔记】4-3 二维数组
§4-3 二维数组
在之前两节中,我们了解了数组的概念与简单应用。但是,在前两节中所使用的数组中,它们的元素都是一个具体的值,那么,能否让数组中的元素也成为一个数组呢?
本节,我们将从二维数组开始,看看多维数组的声明与创建。
4-3.1 二维数组的声明与创建
多维数组可以看做是数组的数组。二维数组是一个特殊的一维数组,其中的每一个元素都是一个一维数组。
声明与创建语法:(以整形数组为例)
int arrays[][] = new int[2][5];
//创建一个长度为2的外层数组,其中的每一个元素都是一个长度为5的一维数组。
注意:多维数组中的每个数组及其其中的元素变量类型均相同。
这是一个二维数组的创建方法,同样地,我们可以将其扩展至多维数组:
数据类型 数组名称[]...[] = new 数据类型[数组长度]...[数组长度]
//此方法所得数组所有子数组的长度相同
利用静态初始化可以得到包含不同长度子数组的多维数组。
接下来,我们来看看如何使用多维数组(以二维整形数组为例)
4-3.2 二维数组的使用
首先我们先来建立一个二维数组:
int[][] arr = {{0,1,2},{3,4,5}};
那么,我们如何取出内层数组的元素并将其输出呢?
System.out.println(arr[0][0]);
System.out.println(arr[0][1]);
System.out.println(arr[0][2]);
System.out.println(arr[1][0]);
System.out.println(arr[1][1]);
System.out.println(arr[1][2]);
使用动态初始化时,也使用这种方式为数组中的元素赋值。
现在,如何获取子数组长度呢?
System.out.println(arr.length); //获取外层数组长度
System.out.println(arr[0].length); //获取内层数组(其中一个)长度
现在我们以二维数组为例,了解了多维数组的创建与简单使用。现在,我们依然以一个二维数组为例,遍历这个二维数组并将其输出。(以上文中的arr
数组为例)
for (int i = 0; i < arr.length ; i++) {
for (int j = 0; j < arr[i].length; j++) {
System.out.println(arr[i][j]);
运行结果如图所示:
4-3.3 二维数组图解
刚才我们创建的二维数组,实际上,包括其他的多维数组,实际上是数组嵌套的结果。若用图解释多维数组(此处以二维数组为例),则可以将其表示成: