第二章:簡單 Java 程式解析
第三章:變數與資料型態
第四章:運算子、運算式與敘述
第五章:選擇性敘述與迴圈
第十章:實例變數與函數、類別變數與函數
Powered By GitBook
二維與多維陣列

一、二維陣列

二維陣列更方便處理較複雜的運算。
1
資料型態 陣列名稱[][];
2
陣列名稱=new 資料型態[列的個數][行的個數]; //而列的個數一定要填
Copied!
1
int score[][]; //宣告整數陣列score
2
score=new int[2][4]; //使陣列score 可存放2列4行的記憶體空間
Copied!

較簡潔的方式:

1
資料型態 陣列名稱[][]=new 資料型態[列個數][行個數]; //列的個數一定要填
Copied!
int score [2][4] 的圖表示意圖:
(0,0) 15
(0,1) 25
(0,2) 30
(0,3) 17
(1,0) 22
(1,1) 52
(1,2) 10
(1,3) 8
若要直接給陣列初值可以這麼做:(搭配以上圖表做示範)
1
int score[][]=
2
{
3
{15,25,30,17},
4
{22,52,10,8}
5
};
Copied!

二、取得二維陣列行數 length

陣列名稱.length
陣列名稱[列].length //可以取得陣列某列的個數
1
public class ch06_4 {
2
3
public static void main(String[] args) {
4
int i,j;
5
int score[][]={{15,25,30,17},{22,52,10,8}};
6
7
for(i=0; i<score.length; i++)
8
{
9
for(j=0; j<score[i].length; j++) //這此運用到取得第i列的元素個數
10
{
11
System.out.println("score["+i+"]["+j+"]="+score[i][j]);
12
}
13
}
14
System.out.println("陣列行數:"+score.length);
15
}
Copied!
OUTPUT: score[0][0]=15 score[0][1]=25 score[0][2]=30 score[0][3]=17 score[1][0]=22 score[1][1]=52 score[1][2]=10 score[1][3]=8 陣列行數:2

三、多維陣列

多維陣列如同一個立方體

運用一維與二維的基礎,試撰寫從多維陣列中找出最大值與最小值:

1
public class ch06_5 {
2
3
public static void main(String[] args) {
4
int a[][][]={ //設定2x4x3的陣列
5
{
6
{15,85,36},
7
{30,14,37},
8
{47,23,96},
9
{19,39,51}
10
},
11
{
12
{22,16,51},
13
{97,30,12},
14
{68,77,26},
15
57,32,76}
16
}
17
};
18
int i,j,k;
19
int max=a[0][0][0],min=a[0][0][0];
20
21
for(i=0; i<a.length; i++)
22
for(j=0; j<a[i].length; j++)
23
for(k=0; k<a[i][j].length; k++)
24
{
25
System.out.println("score["+i+"]["+j+"]["+k+"]="+a[i][j][k]);
26
if(max>a[i][j][k])
27
max=a[i][j][k];
28
if(min<a[i][j][k])
29
min=a[i][j][k];
30
}
31
System.out.println("max= "+max);
32
System.out.println("min= "+min);
33
34
}
Copied!
OUTPUT
Last modified 1yr ago