Java編程那些事兒38—break和continue語句

來源:互聯網
上載者:User
 

Java編程那些事兒38—break和continue語句鄭州遊戲學院 陳躍峰出自:http://blog.csdn.net/mailbomb 5.5 break和continue語句         break和continue語句是和迴圈語句緊密相關的兩種語句。其中break關鍵字的意思是中斷、打斷,continue關鍵字的意思是繼續。使用這兩個關鍵字可以調節迴圈的執行。 5.5.1 break語句         break語句在前面的switch語句中已經介紹過,功能的話是中斷switch語句的執行,在迴圈語句中,break語句的作用也是中斷迴圈語句,也就是結束迴圈語句的執行。         break語句可以用在三種迴圈語句的內部,功能完全相同。下面以while語句為例來說明break語句的基本使用及其功能。         範例程式碼:                   int i = 0;                   while(i < 10){                            i++;                            if(i == 5){                                     break;                            }                   }         則該迴圈在變數i的值等於5時,滿足條件,然後執行break語句,結束整個迴圈,接著執行迴圈後續的代碼。         在迴圈語句中,可以使用break語句中斷正在執行的迴圈。         在實際的代碼中,結構往往會因為邏輯比較複雜,而存在迴圈語句的嵌套,如果break語句出現在迴圈嵌套的內部時,則只結束break語句所在的迴圈,對於其它的迴圈沒有影響,範例程式碼如下:                   for(int i = 0;i < 10;i++){                            for(int j = 0;j < 5;j++){                                     System.out.println(j);                                     if(j == 3){                                               break;                                     }                            }                   }         則該break語句因為出現在迴圈變數為j的迴圈內部,則執行到break語句時,只中斷迴圈變數為j的迴圈,而對迴圈變數為i的迴圈沒有影響。         在上面的範例程式碼中,如果需要中斷外部的迴圈,則可以使用文法提供的標籤語句來標識迴圈的位置,然後跳出標籤對應的迴圈。範例程式碼如下:                   lable1:                            for(int i = 0;i < 10;i++){                                     for(int j = 0;j < 5;j++){                                               System.out.println(j);                                               if(j == 3){                                                        break label1;                                               }                                     }                            }         說明:這裡的label1是標籤的名稱,可以為Java語言中任意合法的標識符,標籤語句必須和迴圈匹配使用,使用時書寫在對應的迴圈語句的上面,標籤語句以冒號結束。如果需要中斷標籤語句對應的迴圈時,採用break後面跟標籤名的方式中斷對應的迴圈。則在該範例程式碼中break語句中斷的即迴圈變數為i的迴圈。         同樣的功能也可以使用如下的邏輯實現:                   boolean b = false;                   for(int i = 0;i < 10;i++){                            for(int j = 0;j < 5;j++){                                     System.out.println(j);                                     if(j == 3){                                               b = true;                                               break;                                     }                            }                            if(b){                                     break;                            }                   }         該範例程式碼中,通過組合使用2個break以及一個標識變數,實現跳出外部的迴圈結構。 5.5.2 continue語句         continue語句只能使用在迴圈語句內部,功能是跳過該次迴圈,繼續執行下一次迴圈結構。在while和do-while語句中continue語句跳轉到迴圈條件處開始繼續執行,而在for語句中continue語句跳轉到迭代語句處開始繼續執行。         下面以while語句為例,來說明continue語句的功能,範例程式碼如下:                  int i = 0;                   while(i < 4){                            i++;                            if(i == 2){                                     continue;                            }                            System.out.println(i);                   }         則該代碼的執行結果是:                   1                   3                   4         在變數i的值等於2時,執行continue語句,則後續未執行完成的迴圈體將被跳過,而直接進入下一次迴圈。         在實際的代碼中,可以使用continue語句跳過迴圈中的某些內容。         和前面介紹的break語句類似,continue語句使用在迴圈嵌套的內部時,也只是跳過所在迴圈的結構,如果需要跳過外部的迴圈,則需要使用標籤語句標識對應的迴圈結構。範例程式碼如下:                   lable1:                            for(int i = 0;i < 10;i++){                                     for(int j = 0;j < 5;j++){                                               System.out.println(j);                                               if(j == 3){                                                        continue  label1;                                               }                                     }                            }         這樣在執行continue語句時,就不再是跳轉到j++語句,而是直接跳轉到i++語句。 5.5.3 小結         在實際的代碼中,可以根據需要使用break和continue語句調整迴圈語句的執行,break語句的功能是結束所在的迴圈,而continue語句的功能是跳過當次迴圈未執行的代碼,直接執行下一次迴圈。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.