break和continue的作用和區(qū)別是什么?
一埃碱、break和continue的作用
二猖辫、break和continue的區(qū)別
三、案例分析
一砚殿、break和continue的作用
??break和continue都是用來控制循環(huán)結(jié)構(gòu)的啃憎,主要作用是停止循環(huán)。
二似炎、break和continue的區(qū)別
1辛萍、break用于跳出一個循環(huán)體或者完全結(jié)束一個循環(huán),不僅可以結(jié)束其所在的循環(huán)羡藐,還可結(jié)束其外層循環(huán)贩毕。
注意:
(1)只能在循環(huán)體內(nèi)和switch語句體內(nèi)使用break。
(2)不管是哪種循環(huán)传睹,一旦在循環(huán)體中遇到break耳幢,系統(tǒng)將完全結(jié)束循環(huán)岸晦,開始執(zhí)行循環(huán)之后的代碼欧啤。
(3)當(dāng)break出現(xiàn)在循環(huán)體中的switch語句體內(nèi)時,起作用只是跳出該switch語句體启上,并不能終止循環(huán)體的執(zhí)行邢隧。若想強行終止循環(huán)體的執(zhí)行,可以在循環(huán)體中冈在,但并不在switch語句中設(shè)置break語句倒慧,滿足某種條件則跳出本層循環(huán)體。
2包券、continue語句的作用是跳過本次循環(huán)體中剩下尚未執(zhí)行的語句纫谅,立即進行下一次的循環(huán)條件判定,可以理解為只是中止(跳過)本次循環(huán)溅固,接著開始下一次循環(huán)付秕。
注意:
(1)continue語句并沒有使整個循環(huán)終止。
(2)continue 只能在循環(huán)語句中使用侍郭,即只能在 for询吴、while 和 do…while 語句中使用。
三亮元、案例分析
案例一
代碼如下(示例):
public class Test {
public static void main(String[] args) {
for(int i=0; i<12; i++){
if(i==5){
break;
}
System.out.print(i+" ");
}
}
}
1
2
3
4
5
6
7
8
9
10
運行結(jié)果:
0 1 2 3 4
程序分析:
①程序輸出了01234 到5的時候跳出了循環(huán)猛计。
②break語句導(dǎo)致程序終止包含它的循環(huán),并進行程序的下一階段(整個循環(huán)后面的語句)爆捞,即:不是跳到下一個循環(huán)周期而是退出循環(huán)奉瘤。如果break語句包含在嵌套循環(huán)里,它只跳出最里面的循環(huán)煮甥。
案例二
代碼如下(示例):
public class Test {
public static void main(String[] args) {
for(int i=0; i<12; i++){
if(i==5){
continue;
}
System.out.print(i+" ");
}
}
}
1
2
3
4
5
6
7
8
9
10
運行結(jié)果:
0 1 2 3 4 6 7 8 9 10 11
程序分析:
①可以看到只有5沒有輸出毛好,也即當(dāng)i=5時沒有執(zhí)行打印操作望艺,直接到下一次循環(huán)。
②循環(huán)語句里有continue語句時肌访,程序運行到此語句時找默,不在執(zhí)行循環(huán)體里continue后面的語句而是跳到下一個循環(huán)入口處執(zhí)行下一個循環(huán)。