程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Java編程:break和continue語句

Java編程:break和continue語句

編輯:關於JAVA
 

核心提示:break和continue語句是和循環語句緊密相關的兩種語句。其中break關鍵字的意思是中斷、打斷,continue關鍵字的意思是繼續。使用這兩個關鍵字可以調節循環的執行。

 

break和continue語句是和循環語句緊密相關的兩種語句。其中break關鍵字的意思是中斷、打斷,continue關鍵字的意思是繼續。使用這兩個關鍵字可以調節循環的執行。
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以及一個標識變量,實現跳出外部的循環結構。
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++語句。
3、 小結
在實際的代碼中,可以根據需要使用break和continue語句調整循環語句的執行,break語句的功能是結束所在的循環,而continue語句的功能是跳過當次循環未執行的代碼,直接執行下一次循環。

 

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved