Java迴圈 (for 迴圈, foreach 迴圈) 可以說是程序編寫的基本功.
運用Looplin可以減少程式碼, 只需透過for內的BLOCK, 就可把程式碼重用, 避免要不停把程序碼重覆.
以下我會介紹迴圈的結構, 運行方式, 如何離開迴圈, 以及迴圈的種類.
1) 迴圈的結構, 運行方式, 以及如何離開迴圈
先看以下例子:
for (int i =0; i< 10; i++){
//Block Of Code
}
首先有關鍵字, for, 表明用途.
第一格為初始化, 把i設定為0數值.
第二格為條件句, 即STATEMENT. 條件句主要由Variable, 運算符號, 比較數值組成
第三格為加數器, i++ 即把 i 加上 1
條件句, 如:
x < 10;
只要x比10少, 就會返回true, 反之返回False
運行方式
首先會行第一格, 把i設定為0數值
之後會執行第二格, i++, 即把i值加1.
再之後會執行第二格, 即i<10.
如i比10小, 就會執行Block, 行完Block後再行i++, 再行條件句把x繼續比較, 直至i等如10, 離開LOOP.
結束迴圈: break (只跳出迴圈), return(跳出Method)
跳過迴圈: continue(怱略餘下for Block內的程式碼, 返回for 的第三格, 即例中的 i++)
2) 迴圈的種類
最基本分類, for, foreach, while, do-while, 在本文會介紹for及for each
3) 迴圈的用法
for loop的用法重在LOOP 內 BLOCK的重用, 加上if, Java Array, Java for 迴圈, Java foreach 迴圈, Interface等, 可重用當中的FLow, METHOD.
4) 迴圈的用法一覽表
本篇暫時只以基礎的介紹, 以下為一些例子顯示出for loop的用法.
句型 | 次序: |
for (statement 1; statement 2; statement 3) { // code block to be executed } | statement 1 (只行一次) code block to be executed statement 3 statement 2 code block to be executed statement 3 statement 2 …… 直至statement 2條件不乎合, 跳出LOOP |
例子 | 次序: |
for (int i = 0; i <= 20; i++) { System.out.println(i); } // 0 // 1 // …. // 19 // 20 | int i = 0 (只行一次) System.out.println (i) i++ (即i=1) i < 20 (條件乎合, 繼續) System.out.println (i) i++ (即i=2) i < 20 (條件乎合, 繼續) System.out.println (i) …… i++ (即i=20, 條件不乎合, 跳出LOOP) 直至 i 大於 20 |
例子 | 次序: |
for (int i = 5; i <= 20; i+=5) { System.out.println(i); } //5 //10 //15 //20 | int i = 5 (只行一次) System.out. println (i) i+=5 (即i=10) i < 20 (條件乎合, 繼續) System.out.println(i) i+=5 (即i=15) i < 20 (條件乎合, 繼續) System.out. println (i) …… i+=5 (即i=20, 條件不乎合, 跳出LOOP) 直至 i 大於 20 |
句型 | 次序: | |
for (var item : lists){ // code block to be executed } | 拿出第一個item在items中 行BLOCK拿出第二個item在items中 行BLOCK …… 直至items所有的Item也拿完, 跳出LOOP | |
例子 | ||
String[] names = new String[3]; names[0] = “John”; names[1] = “Mary”; names[2] = “Peter”; for (String item : names) { System.out.println(item); } //John //Mary //Peter | 等同 | String[] names = new String[3]; names[0] = “John”; names[1] = “Mary”; names[2] = “Peter”; for (int i = 0; i < names.length; i++) { String name = names[i]; System.out.println(name); } //John //Mary //Peter |
相關頁面:
Java條件句 – 學會 if 的基礎用法 – 了解 Control Flow 的流程
Java While – While 迴圈的基礎用法 – 程序碼的重用
參考資料: https://docs.oracle.com/javase/8/docs/technotes/guides/language/foreach.html