continue實驗
1 public class test { 2 static int i =0; 3 public static void main(String[] args) { 4 lable1: 5 while(true){ 6 7 if(i == 6){ 8 System.out.println("從lable2下的循環跳到了lable1"); 9 break; 10 // continue lable2; 11 } 12 13 lable2: 14 while(true){ 15 if(i == 5){ 16 System.out.println("將從lable2將跳到lable1"); 17 i++; 18 continue lable1; 19 } 20 i++; 21 } //labe2 22 }//lable1 23 }//main 24 }//類
上邊代碼有兩個while循環,並且是嵌套的;筆者在外層while循環設置Lbale1,在內層while設置Lable2標簽
當靜態變量 i =5的時候,執行
continue lable1;
就會從內層循環跳轉到外層循環,並且從頭開始執行外層循環
continue使用注意事項:
-
循環內部跳轉
-
方向向上
錯誤演示:非內部跳轉
break實驗
和cotinue一樣,但continue是跳轉到標簽處后繼續執行,而break會停止在標簽處不動
1 lable1: 2 while(true){ 3 System.out.println(i); 4 i++; 5 6 if(i==3){ 7 System.out.println("i = 10,break到lable1"); 8 break lable1; 9 } 10 }
結果:
1 0 2 1 3 2 4 i = 10,break到lable1
結果發現,當執行到 i==3 后,執行
break lable1;
會break 到lable1處的while()。發現程序不再執行
總結
- continue和break的相同點,
- 都能實現goto功能(continue lable;break lable)
- 內部跳轉(continue/break語句 在循環的內部)
- 向上跳轉continue/break 后接的標簽必須在continue/break語句的上邊
特殊情況:有循環嵌套依然遵循內部跳轉和向上跳轉
2. ontinue和break的不同點
·continue是跳轉到標簽處繼續執行
·break跳轉到標簽處停止運行