一、二维数组的声明
声明形式:
①数组类型 数组名[ ] [ ]; 如:int arr [ ] [ ];
②数组类型 [ ] 数组名 [ ]; 如 int [ ] arr [ ];
③数组类型 [ ] [ ] 数组名;如:int [ ] [ ] arr;
例如 int a[ ] [ ],b[ ];其中a是二维数组,b是一维数组
二、二维数组的创建
声明了二维数组,仅仅声明了数组名,数组并不真正存在,所以还需要创建二维数组。
创建形式:
new 数组类型 [行数表达式] [列数表达式] 如:int a[ ] [ ] =new int [3][4];
a表示一个数组有3行,每行有4个元素。
注意:不同于C++,JAVA的二维数组中每行中可以有不同的元素个数。如:
int x[ ] [ ] =new int [3] [ ];
x[0] = new int [3];
x[1] = new int [9];
x[2] = new int [7];
x表示一个3行的二维数组,其中,第一行有3个元素,第二行有9个元素,第三行有7个元素。
可以将一个二维数组看成多个一维数组。
三、二维数组的访问
访问二维数组需要给出两个下标值。访问形式:
二维数组名 [下标1] [下标2]
同一维数组一样,下标从0开始,最大不超过 "数组长度 - 1",不能越界。
二维数组长度可以表示为: x.length 其中x 为数组名。如果想知道第 i 行元素的个数,则可以表示为: x[i].length
四、二维数组的初始化
二维数组在创建时都有初始值,如:
-->整型数组元素的默认初始化值:0
-->浮点型数组元素的默认初始化值:0.0
-->字符型数组元素的默认初始化值:0(或' ' )
-->boolean型数组元素的默认初始化值: false
-->引用数据类型数组元素的默认初始化值: null
改变二维数组元素的值可以通过赋值语句来实现。二维数组也可以初始化。如:
int a [ ] [ ] ={ {1,2,3,4},{5,6,7,8},{8,9,10,11} };
int x [ ] [ ] ={ {10,20,30},
{15,34,24,56},
{12,78,24,35,46} };
其中a有三行,每一行有4个元素;x有3行,每行元素分别为 3,4,5。
五、遍历二维数组的所有元素
int arr[][] = new int[][]{{1,2,3},{4,5,6,7},{8,9,10}};
//思路:先一行一行遍历,把第一行元素遍历完,再下一行....循环下去
for(int i=0;i<arr.length;i++){
//取第一行(外层),然后进入第一行里面取元素(内层)
for(int j=0;j<arr[i].length;j++){
System.out.print(arr[i][j]+"\t");
}
}