Java Break和continue實現goto功能


 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使用注意事項:
  
  1. 循環內部跳轉

  2. 方向向上

 錯誤演示:非內部跳轉   

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()。發現程序不再執行

                                        總結
  1. continue和break的相同點,
  • 都能實現goto功能(continue lable;break lable)
  • 內部跳轉(continue/break語句 在循環的內部)
  • 向上跳轉continue/break 后接的標簽必須在continue/break語句的上邊

特殊情況:有循環嵌套依然遵循內部跳轉和向上跳轉

2. ontinue和break的不同點  

·continue是跳轉到標簽處繼續執行

   ·break跳轉到標簽處停止運行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM