11 二維陣列初窺
阿新 • • 發佈:2020-11-28
11 二維陣列初窺
定義語法
變數型別[] [] 名稱 = new 變數型別[a] [b];
a代表的是能存放多少個一維陣列
b代表每一個一維數組裡面能存放多少個變數
a*b代表著該二維陣列能夠儲存的元素的個數
如:int[] [] temp = new int[5] [6];
意思是定一個了一個名字為temp的二維陣列,它能存放5個長度為6的一維陣列,即一共可以存放三十個元素
具體操作
1.賦值
第一種,初始化賦值
int[][] a={{22},{33},{44,88,99}};
第二種:通過for迴圈賦值
int[][] a=new int[5][6]; System.out.println("能存放一維陣列的個數"+a.length); System.out.println("第一個一維陣列能存放元素的個數"+a[0].length); //第二種: 通過for迴圈賦值(所有值都一樣) for (int i = 0; i < a.length; i++) { for (int j = 0; j < a[i].length; j++) { a[i][j]=10; } } //補充:如果想賦值不同的值,直接賦值即可,如a[0][4]=9;a[1][2]=-7
2.取值
第一種 for迴圈輸出
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println();
}
第二種 foreach迴圈輸出
for (int[]data : a) { //把原陣列的地址賦值給新陣列 for (int i : data) { System.out.print(i+"\t"); } System.out.println();//每輸出一個二維陣列就換行 }
3.取最大值或最小值
第一種 for迴圈
int max=-999999,min=99999999; for (int i = 0; i < a.length; i++) { for (int j = 0; j < a[i].length; j++) { if(max<=a[i][j]){ max=a[i][j]; } if(min>=a[i][j]){ min=a[i][j]; } } } System.out.println("二維陣列中最大值為:"+max); System.out.println("二維陣列中最小值為:"+min);
第二種 foreach
//foreach迴圈(底層為迭代器)
//foreach定義一個新陣列來接收原陣列的地址
for (int[]data : a) {
//把原陣列的地址賦值給新陣列
for (int i : data) {
if(i>max){
max=i;
}
if(i<min){
min=i;
}
}
}
System.out.println("二維陣列中最大值為:"+max);
System.out.println("二維陣列中最小值為:"+min);