Web | Coding | Blog | SOHO

[Java]第六章:陣列 (二維與多維陣列)

陣列可以存放相同的資料型態資料,並利用索引值存取其內容。

參考書籍:Java 7 教學手冊

二維陣列:

二維陣列更方便處理較複雜的運算。

資料型態 陣列名稱[][];
陣列名稱=new 資料型態[列的個數][行的個數];  //而列的個數一定要填

範例:

int score[][];   //宣告整數陣列score
score=new int[2][4]; //使陣列score 可存放2列4行的記憶體空間

另外還有較簡潔的方式:

資料型態 陣列名稱[][]=new 資料型態[列個數][行個數]; //列的個數一定要填

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)

若要直接給陣列初值可以這麼做:(搭配以上圖表做示範)

int score[][]={   {15,25,30,17},
                  {22,52,10,8}
               } ;

在二維陣列可以利用 .length 來取得陣列的行數。

陣列名稱.length
陣列名稱[列].length  //可以取得陣列某列的個數

範例示範:

public class ch06_4 {

	public static void main(String[] args) {
		int i,j;
		int score[][]={{15,25,30,17},{22,52,10,8}};

		for(i=0; i<score.length; i++)
		{
		   for(j=0; j<score[i].length; j++) //這此運用到取得第i列的元素個數
		   {
		      System.out.println("score["+i+"]["+j+"]="+score[i][j]);
		   }
		}
		System.out.println("陣列行數:"+score.length);
	}

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


多維陣列:

多維陣列如同一個立方體

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

public class ch06_5 {

	public static void main(String[] args) {
		int a[][][]={  //設定2x4x3的陣列
			     {
			        {15,85,36},
			        {30,14,37},
			        {47,23,96},
			        {19,39,51}
			      },
			      {
			        {22,16,51},
			        {97,30,12},
			        {68,77,26},
			         57,32,76}
			       }
			      };
		int i,j,k;
		int max=a[0][0][0],min=a[0][0][0];

		for(i=0; i<a.length; i++)
		  for(j=0; j<a[i].length; j++)
		    for(k=0; k<a[i][j].length; k++)
                     {
                        System.out.println("score["+i+"]["+j+"]["+k+"]="+a[i][j][k]);
                        if(max>a[i][j][k])
			 max=a[i][j][k];
			if(min<a[i][j][k])
			 min=a[i][j][k];
		      }
		System.out.println("max= "+max);
		System.out.println("min= "+min);

	}

OUTPUT:

ch6


本章就到此結束了,下一章為函數。

參考書籍:Java 7 教學手冊


Java 學習日誌 (點此閱讀所有 Java日誌)
有任何問題也歡迎在底下留言,或到fb粉絲專頁發訊息給站長一起討論。


如果您喜歡本站的文章,也歡迎將文章分享轉貼並註明出處;
另外還未按讚粉絲專頁的朋友,也可以動動手點擊追蹤最新的文章唷:

Comments

comments

如果您喜歡本站的文章,也歡迎將文章分享轉貼並註明出處;另外還未按讚粉絲專頁的朋友,也可以動動手點擊追蹤最新的文章唷:


© 2017 4xCode™ | Design:SC 站長