continue語句也是單個單詞自成一條java語句,例如“continue;”,它和break語句都是用來控制循環的,break語句是用來終止循環的執行,而continue語句則是用來終止當前本次循環,直接進入下一次循環繼續執行。請參照以下代碼以及運行結果進行對比學習:
for(int i = 1; i <= 10; i++){
if(i == 5){
break;
}
System.out.println("break : i = " + i);
}
System.out.println("----------------------");
for(int i = 1; i <= 10; i++){
if(i == 5){
continue;
}
System.out.println("continue : i = " + i);
}
運行結果如下圖所示:
圖6-41:break和continue對比
對以上代碼以及執行結果進行分析,請看下圖:
圖6-42:break和continue對比
對于以上程序,當“continue;”語句執行的時候,當前本次循環剩下的代碼就不再執行了(不再執行下面的輸出語句),直接執行“i++”去了,而break就不同了,當以上程序“break;”語句執行之后整個for循環就結束了。
對于break語句有“break first;”這種寫法,其實continue語句也是有這種語法機制的,這里就不再贅述了,大家可以自己編寫程序測試一下。
對于break和continue語句的區別有這樣一個小的現實情景,大家可以借鑒理解一下:某公司銷售部銷售經理要進行人員招聘,預約了10個應聘者,這10個應聘者在辦公室門口長凳上按照一定的次序坐著等待,銷售經理一個一個輪流進行面試,當輪到第3個應聘者面試的時候,銷售經理突然接到了一通電話,說家里有事兒了,那么此時銷售經理就不得不終止今天的面試,此時銷售經理執行了break語句,循環結束了,剩下的就不再面試了。那么假設銷售經理沒有接到這通電話則會繼續輪流面試,他為每一個應聘者準備了5個問題,假設輪到第6個應聘者面試,在面試過程中問完第1個問題之后銷售經理就知道這人不適合這個崗位,那么此時剩下的4個問題就不再問了(當前本次循環結束),直接對著門口喊了一句:下一個應聘的進來。這個過程就相當于銷售經理執行了continue語句。
總之,break用來終止循環,continue用來中斷當前本次循環,直接進入下一次循環繼續執行。