JavaSE - Break 和 Continue
break & continue
1、break 关键字
break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。
break 跳出最里层的循环,并且继续执行该循环下面的语句。
【演示:跳出循环】
public static void main(String[] args) {
int i = 0;
while (i < 100) {
i++;
System.out.println(i);
if (i == 30) {
break;
}
}
}switch 语句中 break 在上面已经详细说明了
2、continue 关键字
continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。
在 for 循环中,continue 语句使程序立即跳转到更新语句。
在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。
public static void main(String[] args) {
int i = 0;
while (i < 100) {
i++;
if (i % 10 == 0) {
System.out.println();
continue;
}
System.out.print(i);
}
}3、两者区别
break 在任何循环语句的主体部分,均可用 break 控制循环的流程。break 用于强行退出循环,不执行循环中剩余的语句。(break 语句也在 switch 语句中使用)
continue 语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
4、带标签的 continue
【了解即可】
goto 关键字很早就在程序设计语言中出现。尽管 goto 仍是 Java 的一个保留字,但并未在语言中得到正式使用;Java 没有 goto。然而,在 break 和 continue 这两个关键字的身上,我们仍然能看出一些 goto 的影子---带标签的 break 和 continue。
「标签」是指后面跟一个冒号的标识符,例如:label:
对 Java 来说唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于 break 和 continue 关键字通常只中断当前循环,但若随同标签使用,它们就会中断到存在标签的地方。
带标签的 break 和 continue 的例子:
【演示:打印 101-150 之间所有的质数】
javapublic static void main(String[] args) { int count = 0; outer: for (int i = 101; i < 150; i ++) { for (int j = 2; j < i / 2; j++) { if (i % j == 0){ continue outer; } } System.out.print(i+ " "); } }
【看不懂没关系,只是了解一下即可,知道 goto 这个保留字和标签的写法】