用來建立一個執行的迴圈,其語法是:
for( 設定變數初值 ; 終點檢驗 ; 計算式 ) 單一指令;
for( 設定變數初值 ; 終點檢驗 ; 計算式 ) { 指令集; }
for 迴圈的執行過程如下:
- 迴圈必須有一個控制變數,首先要設定這個變數的初值。
- 檢驗變數的值,是否已到終點?如果到了終點,就會離開迴圈,繼續執行下面的程序。
- 如果未到終點,會執行迴圈的指令集。
- 執行上面的指令集後,會執行計算式,改變控制變數的值。然後回到上面的步驟 2。
上面的步驟會重複執行,直到終點跳出。由於一開始就作終點檢驗,如果初值就超過終點,則迴圈的指令集不會被執行。如果終點檢驗設計的不好,可能會造成無限迴圈,無法跳出來。
讀取物件的成員可用 for( in )。
用來建立一個執行的迴圈,其語法是:
while( 條件式 ) 單一指令;
while( 條件式 ) { 指令集; }
while 迴圈的執行過程如下:
- 計算迴圈的條件式,結果為 false 或 0,就離開迴圈,繼續執行下面的程序。
- 結果為 true 或 非0值,會執行迴圈的指令集。然後回到上面的步驟 1。
上面的步驟會重複執行,直到條件式得到 false 跳出。由於一開始就作條件式檢驗,如果結果為 false,則迴圈的指令集不會被執行。迴圈的指令集必須有改變條件式的相關指令,迴圈才能停止;設計不良,可能變成無限迴圈。
用來建立一個執行的迴圈,其語法是:
do 單一指令; while( 條件式 )
do { 指令集; } while( 條件式 )
do 迴圈的執行過程如下:
- 執行迴圈的指令集。
- 計算迴圈的條件式,結果為 false 或 0,就離開迴圈,繼續執行下面的程序。
- 結果為 true 或 非0值,回到上面的步驟 1。
上面的步驟會重複執行,直到條件式得到 false 跳出。do 迴圈的指令集至少被執行一次,這與前面兩種指令不同。
可以跳出迴圈。break 只能用在迴圈中。
可以跳過後面的指令,進行下一次迴圈的執行。continue 只能用在迴圈中。
- 上例中,5 沒有印出來。
設定一個跳躍的終點。標籤的名稱要符合 識別名 的規定;名稱後接一個”:”。標籤必須配合 break, continue 使用;原本 break, continue 只能跳出本身直屬迴圈的最近一層;加上標籤後,可以跳出很多層迴圈。雖然標籤之後可以接任何指令,但是由於 break, continue 本身的限制,所以沒法跳躍到任一的指令;此時標籤之後,只能接 for, while, do 迴圈指令。
- 上例中,如果將 break A4 改成 break,結果是 0 0 1 1 2 2 3 3 4 4。