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