二维数组
二维数组其实是一个特殊的一维数组,特殊在这个一维数组当中的每一个元素都是一个一维数组
1、二维数组静态初始化
int[][] array = {{1,1,1},{2,2,2},{3,3,3}};
2、二维数组的length属性
public class ArrayTest4 {
public static void main(String[] args) {
int[][] a ={
{1,2,3},
{10,20,30,40,50},
{6,7,8,9},
{0}
};
System.out.println(a.length);//指二维数组中有几个大括号
System.out.println(a[0].length);//指{1,2,3}的长度
}
}
输出结果:
3、二维数组的元素访问
a[二维数组中的一维数组的下标][一维数组的小标]
a[0][0]:表示第一个一维数组中的一个一维元素。
取出上面二维数组中的第1个一维数组和一维数组的第一个元素:
int[] first = a[0] ;
int firstnum = first[0];
System.out.println(firstnum);
//或
System.out.println(a[0][0]);
System.out.println(Arrays.toString(a[0]));
输出结果:
4、二维数组的遍历
public class ArrayTest5 {
public static void main(String[] args) {
String[][] array = {
{"java","oracle","c++","python","c#"},
{"张三","李四","王五"},
{"lucy","jack","rose"}
};
for (int i = 0; i < array.length; i++){
for (int j = 0 ; j < array[i].length ; j++){
System.out.print(array[i][j] + " ");
}
System.out.println("");
}
}
}
输出结果:
5、动态初始化二维数组
int[][] = new int[3][4];
6、方法的参数是一个二维数组
public class ArrayTest6 {
public static void main(String[] args) {
int[][] a ={
{1,2,3,4},
{5,6,7,8},
{9,10,11}
};
printArray(a);
}
public static void printArray(int[][] array){
for (int i = 0 ; i < array.length ; i++){
for (int j = 0; j < array[i].length ; j++){
System.out.print(array[i][j] + " ");
}
System.out.println();
}
}
}
输出结果: