程式在貼的時候最好用code block括起來比較清楚明瞭一點.
<pre class="c" name="code">
int[][] n = {{0, 1, 2, 3}, {4, 5, 6, 7}, {8, 9, 10, 11}};
宣告int二維陣列 , 第一層有三格 , 第一格放 0,1,2,3 , 第二格放4,5,6,7 第三格放 8,9,10,11
<pre class="c" name="code">
int sum = 0;
for (int[]r:n){
for (int i : r){
sum += i;
}
}
簡單說 , 就是從頭開始加總.
第一圈的for迴圈只處理第一層 , 所以先帶入第一格設定的陣列.
第二圈則看帶入的陣列,作陣列中的int迴圈相加 , 加完了就又跳回第一圈 , 第一圈再帶入第二格、第三格.
所以 sum 66 = 0+1+2+3 + 4+5+6+7 + 8+9+10+11
這是 foreach loop
<pre class="c" name="code">for (int i : r){...}
這裡 : 的意思是, 把 r 裡面的每一個給 i.
<pre class="c" name="code">
String[] myWords = {"foo", "qoo","zoo"}
for (String theWord: myWords ) {
print(theWord);
}
這意思是, 依序一次一個把 myWords 中的 item ("foo", "qoo","zoo") 傳給 theWord,
這樣你就不必事先知道 myWords 的長度(item counts).