在自己學習java語言的過程中,很容易把break和continue的用法混淆。為了便於以後快速查閱及溫習,在此特留學習筆記一份。
在任何迭代語句的主體部分,都可以用break和continue控制迴圈的流程。其中,break用於強行退出迴圈,不執行迴圈中剩餘的.語句。而continue則停止執行當前迭代,然後退回迴圈起始處,開始下一次迭代。
原始碼
下面這個程式向大家展示了break和continue在for和while迴圈中的例子:
package ourthchapter;public class BreakAndContinue { public static void main(String[] args) { for (int i = 0; i < 100; i++) { if (i == 74) {// Out of for loop break; } if (i % 9 != 0) {// Next iteration continue; } t(i + " "); } tln(); int i = 0; while (true) { i++; int j = i * 27; if (j == 1269) {// Out of loop break; } if (i % 10 != 0) {// Top of loop continue; } t(i + " "); } }}
輸出結果
01.0 9 18 27 36 45 54 63 72
02.10 20 30 40
原始碼解析
在這個for迴圈中,i的值永遠不會達到100,因為一旦i到達74,break語句就會中斷迴圈。通常,只有在不知道中斷條件何時滿足時,才需要這樣使用break。只要i不能被9整除,continue語句就會使執行過程返回到迴圈的最開頭(這使i值遞增)。如果能夠整除,則將值顯示出來。輸出結果之所以顯示0,是由於0%9等於0。
最後,可以看到一個“無窮while迴圈”的情況。然而,迴圈內部有一個break語句,可中止迴圈。除此之外,大家還會看到continue語句執行序列移回到迴圈的開頭,而沒有去完成continue語句之後的所用內容。(只有在i能被10整除時才打印出值。)