break和continue必須要在循環(huán)中使用嗎?
一. break
作用
break關(guān)鍵字可以用于for、while、do-while及switch語(yǔ)句中,用來(lái)跳出整個(gè)語(yǔ)句塊,結(jié)束當(dāng)前循環(huán)的執(zhí)行。另外我們要特別注意,break語(yǔ)句總是跳出自己所在的那一層循環(huán)。當(dāng)兩個(gè)for循環(huán)嵌套時(shí),如果break語(yǔ)句位于內(nèi)層的for循環(huán),它只會(huì)跳出內(nèi)層的for循環(huán),但不會(huì)跳出外層的for循環(huán)。
語(yǔ)法
break的用法很簡(jiǎn)單,我們?cè)谥皩W(xué)習(xí)switch時(shí)就已經(jīng)使用過(guò)了。一般就是在循環(huán)或switch語(yǔ)句中編寫如下一條語(yǔ)句:
break;
比如我們使用for循環(huán)計(jì)算從1累加到100的和時(shí),在循環(huán)內(nèi)部,我們可以使用if判斷,當(dāng)i==50就提前利用break關(guān)鍵字結(jié)束循環(huán)。因此,break經(jīng)常會(huì)配合if語(yǔ)句使用。
二. continue
作用
continue適用于各種循環(huán)結(jié)構(gòu)中,不能用于其他地方,用于跳過(guò)本次循環(huán),執(zhí)行下一次循環(huán)。break可以跳出當(dāng)前循環(huán),即整個(gè)循環(huán)都不會(huì)執(zhí)行了。而與break不同,continue是提前結(jié)束本次循環(huán),但會(huì)繼續(xù)執(zhí)行下一次的循環(huán)。在多層嵌套的循環(huán)中,continue也可以通過(guò)標(biāo)簽指明要跳過(guò)的是哪一層循環(huán),并且同樣是只結(jié)束自己所在的循環(huán)。
2.語(yǔ)法
continue的用法很簡(jiǎn)單,在循環(huán)結(jié)構(gòu)中直接使用如下語(yǔ)句即可:
continue;
三. 使用條件
不一定非要在循環(huán)中使用,break和continue關(guān)鍵字通常用于循環(huán)語(yǔ)句中,但不是必須的。下面是一些例子:
1.break和continue在循環(huán)中使用:
for (int i = 0; i < 10; i++) {
if (i == 5) {
break; // 跳出循環(huán)
}
if (i == 3) {
continue; // 跳過(guò)當(dāng)前循環(huán)
}
System.out.println(i);
}
2.break在switch語(yǔ)句中使用
int num = 2;
switch (num) {
case 1:
System.out.println("數(shù)字是1");
break;
case 2:
System.out.println("數(shù)字是2");
break;
case 3:
System.out.println("數(shù)字是3");
break;
default:
System.out.println("未知數(shù)字");
}
3.continue在while語(yǔ)句中使用:
int i = 0;
while (i < 10) {
i++;
if (i % 2 == 0) {
continue; // 跳過(guò)偶數(shù)
}
System.out.println(i);
}
4.使用break來(lái)中止程序:
int counter = 0;
while (true) {
counter++;
if (counter == 10) {
break;
}
}
System.out.println("Counter: " + counter);
5.使用continue來(lái)跳過(guò)某些迭代:
int[] numbers = {1, 2, 3, 4, 5, 6};
for (int i = 0; i < numbers.length; i++) {
if (numbers[i] % 2 == 0) {
continue;
}
System.out.println(numbers[i]);
}
總之,break和continue是用于控制程序流程的關(guān)鍵字,通常用于循環(huán)語(yǔ)句中,但也可以用于其他類型的語(yǔ)句中。