1. 程式人生 > >關於break和continue控制迴圈的流程

關於break和continue控制迴圈的流程

在任何迭代語句的主體部分,都可用break和continue控制迴圈的流程,break用於退出迴圈,不執行迴圈中的語句,而continue則停止當前迴圈,進入下一次迴圈

public class Test {
	public static void main(String[] args) {
		int i = 0;
		outer:
		while(true){
			System.out.println("outer while loop");
			while(true){
				i++;
				System.out.println("i=" + i);
				if(i == 2){
					System.out.println("continue");           // ① i==2時,退出本次迴圈,進入下一次迴圈
					continue;
				}
				if(i == 4){
					System.out.println("continue outer");    
					continue outer;                         //② 當i==4時,退出到外層迴圈,
				}
				if(i == 6){
					System.out.println("break");
					break;                                //③ 當i==6退出本次迴圈,
				}
				if(i == 8){
					System.out.println("break outer");
					break outer;                        //④ 當i==8時,中斷並跳出標籤所指的迴圈
				}
			}
		}
		System.out.println("liu");
	}
}
輸出結果為:
outer while loop
i=1
i=2
continue
i=3
i=4
continue outer
outer while loop
i=5
i=6
break
outer while loop
i=7
i=8
break outer
liu
以下規則使用於for迴圈和while迴圈:

(1)一般的continue會退回到最記憶體的開頭,並繼續執行

(2)帶標籤的continue會到大標籤的位置,並重新進入緊接在哪個標籤後面的迴圈

(3)一般的break會中斷並跳出當前迴圈

(4)帶標籤的break會中斷並跳出標籤所指的迴圈