二维数组
- 定义
- 在数组中定义数组,第二维数组是第一维数组的每一个数据
- 动态:
- 数据类型[][] 数组名 = new 数据类型[外层一维的长度][内层二维长度]; //一维二维同时创建
- 数据类型 数组名[][] = new 数据类型[外层一维的长度][];
- 用法:数组名[一维][二维] ;
//动态初始化
int[][] arr1=new int[2][3];
//赋值
arr1[0][0]=1;
arr1[0][1]=2;
arr1[0][2]=3;
arr1[1][0]=4;
arr1[1][1]=5;
arr1[1][2]=6;
//获取值
System.out.println(arr1[0][0]);
System.out.println(arr1[0][1]);
System.out.println(arr1[0][2]);
System.out.println(arr1[1][0]);
System.out.println(arr1[1][1]);
System.out.println(arr1[1][2]);
double arr2[][] = new double[3][];
arr2[0]= new double[2];
arr2[0][0] = 1;
arr2[0][1] = 2;
arr2[1]=new double[]{3,4,5,6,7};
//arr2[1]={1.1,2.2,3.3}; 这种方式不可行
System.out.println(arr2[0][0]);
System.out.println(arr2[0][1]);
System.out.println(arr2[1][0]);
System.out.println(arr2[1][1]);
System.out.println(arr2[1][2]);
System.out.println(arr2[1][3]);
System.out.println(arr2[1][4]);
- 静态
- 数据类型[] 数组名[] = new 数据类型[][]{{1,2,3},{4,5}…};
- 数据类型[] 数组名[] ={{1,2,3},{4,5}…};
int[] arr3[] = new int[][]{{1,2,3},{4,5}};
System.out.println(arr3[0][0]);
System.out.println(arr3[0][1]);
System.out.println(arr3[0][2]);
System.out.println(arr3[1][0]);
System.out.println(arr3[1][1]);
char[][] arr4={{'s','h'},{'s','x','t'}};
System.out.println(arr4[0][0]);
System.out.println(arr4[0][1]);
System.out.println(arr4[1][0]);
System.out.println(arr4[1][1]);
System.out.println(arr4[1][2]);
public class Array01 {
public static void main(String[] args) {
int[][] arr = new int[3][];
arr[0]=new int[]{1,2};
arr[1]=new int[]{3};
arr[2]=new int[]{4,5,6};
/*for嵌套加强for遍历
for(int i=0;i<=arr.length-1;i++){
for(int ch:arr[i]){
System.out.println(ch);
}
} */
/*加强for遍历
for(int[] a:arr){
for(int b:a){
System.out.println(b);
}
} */
/*for嵌套for遍历
for(int i=0;i<arr.length;i++){
for(int j=0;j<arr[i].length;j++){
System.out.println(arr[i][j]);
}
} */
/*加强for嵌套for遍历
for(int[] a:arr){
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
} */
}
}