【Java SE】八、流程控制
在 Java 中,保留了 C/C++ 中的 goto 语句的特性,推出了带标签的 break 和 countine 语句,略有不同,在此记录。
带标签的 break
带标签的 break
语句通常用于多层循环嵌套中,在某一个循环前面加一个标签,如 outer:
,在需要退出循环的时候就可以直接用break + 标签;
跳出多层循环到标签处,并且不会再次进入到刚才的循环中。
public class Test {
public static void main(String[] args) {
outer: // 这里是标签,跳转到这里,且不会再进入下面的循环
for (int i = 1; i < 3; i++) {
for (int j = 1; j < 3; j++) {
for (int t = 1; t < 3; t++) {
System.out.println("假期加油 " + t);
break outer; // break + 标签
}
}
}
System.out.println("输出结束");
}
}
运行结果如下:
假期加油 1
输出结束
带标签的 countine
带标签的 countine
语句用法与 break
一样。不同的是,跳转到标签处后,它会结束标签后面的当次循环,继续执行下一次循环。
public class Test {
public static void main(String[] args) {
label: // 这里是标签,跳转到这里,并结束下面的当次循环,继续执行下一次循环
for (int i = 0; i < 3; ++i) {
for (int j = 0; j < 3; ++j) {
if (j == 2) {continue label;} // countine + 标签
System.out.println(i + ", " + j);
}
}
}
}
运行结果如下:
0, 0
0, 1
1, 0
1, 1
2, 0
2, 1