Re: [問題] 簡單的二維陣列轉一維陣列

看板java作者 (暗夜)時間9年前 (2015/06/15 22:16), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
你的問題讓我覺得你可能對二維陣列裡面是什麼東西有誤會 或著你不懂for each在做什麼 所以我直接把你原來的陣列做點處理看看對你有沒有幫助 首先你先去跑這段程式碼 public static void main(String[] args) { int[][]a={{1,4,7,10}, {2,5,8,11}, {3,6,9,12}}; System.out.println("a.length="+a.length); for(int i=0;i<a.length;i++){ System.out.println("a["+i+"].length="+a[i].length); for(int j=0;j<a[i].length;j++){ System.out.println("a["+i+"]["+j+"]="+a[i][j]); } } } 你會看到如下的結果 a.length=3 a[0].length=4 a[0][0]=1 a[0][1]=4 a[0][2]=7 a[0][3]=10 a[1].length=4 a[1][0]=2 a[1][1]=5 a[1][2]=8 a[1][3]=11 a[2].length=4 a[2][0]=3 a[2][1]=6 a[2][2]=9 a[2][3]=12 第一行你可以知道a裡面是一個陣列長度是3 表示有a[0],a[1],a[2]三個元素 而這三個元素分別都是一個長度為4的int陣列(a[i].length) 而你原來for each的b分別是a[0],a[1],a[2]這三個元素 所以b[0]表示的是a[0][0],a[1][0],a[2][0] 先講到這你再想一下看看有沒有懂了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.184.32.14 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1434377812.A.508.html

06/15 23:13, , 1F
感謝D大回答,後面這段解釋非常清楚!!謝謝^^
06/15 23:13, 1F
文章代碼(AID): #1LVjvKK8 (java)
文章代碼(AID): #1LVjvKK8 (java)