break 和 continue

1. break 用于强行退出整个循环
2. continue 用于结束本次循环 , 继续下一次
带标签的continue/break语句(命名循环)
“标签”是指后面跟一个冒号的标识符,例如:“label :”。对 Java 来说唯一用到标签的地方是循环语句之前。
“goto”有害论中,最有问题的是标签而不是goto本身,随着标签在一个程序的出现次数越来越多,产生bug的机会也越来越多。
但是Java标签不会产生这个问题(goto被删掉了),因为已经锁死了其作用范围,不可通过特别的方式到处传递程序的控制权。
【示例】
// 打印 101 ~ 150 之间所有的质数
public class Test {
public static void main(String[] args){
outer : for(int i = 101; i < 150; i ++){
for(int j = 2; j < i/2; j ++){
if(i % j == 0)
continue outer; // 符合某条件跳到外部循环继续
// 此处换成单break 会执行下面的输出语句
}
System.out.print(i + " ");
}
}
}
public class Test {
public static void main(String[] args){
int target = 100;
int point = 0;
outer: while(target <= 100){
for(int i = 0; i < target; i ++){
if(point >= 50)
break outer; // 如果换成continue 该程序将永无止境
point += i;
}
}
System.out.println(point);
}
}
浙公网安备 33010602011771号