JAVA-标签语句
·
标签语句 是 Java 中一种可以给循环 / 语句块标记名称的语法,核心作用是精准控制多层循环的跳转。
1. 先搞懂:标签语句是什么?
标签语句的语法格式很简单:
java
运行
标签名: 循环/语句块 {
// 循环体/语句体
break/continue 标签名; // 跳转到标签位置
}
- 标签名:自定义的标识符(比如
outer、loop1),后面必须跟冒号:。 - 核心用途:配合
break或continue,跳出 / 跳过指定层级的循环(普通break/continue只能操作当前层循环)。
实战示例:对比普通循环和标签语句
场景:双层 for 循环,找到数字 5 时直接退出外层循环
① 普通 break(只能退出内层循环,外层还会继续)
java
运行
public class LabelDemo {
public static void main(String[] args) {
// 双层循环:外层控制行,内层控制列
for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 5; j++) {
if (j == 5) {
break; // 只退出内层循环,外层i还会继续执行
}
System.out.print(j + " ");
}
System.out.println(); // 换行
}
}
}
输出:
plaintext
1 2 3 4
1 2 3 4
1 2 3 4
② 标签语句(精准退出外层循环)
java
运行
public class LabelDemo {
public static void main(String[] args) {
// 给外层循环加标签:outer
outer: for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 5; j++) {
if (j == 5) {
break outer; // 直接退出标签为outer的外层循环
}
System.out.print(j + " ");
}
System.out.println();
}
}
}
输出:
plaintext
1 2 3 4
(找到 j=5 时,直接退出外层循环,后续 i=2、i=3 的循环都不执行了)
标签 + continue:跳过外层循环的当前轮次
java
运行
public class LabelDemo {
public static void main(String[] args) {
outer: for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 5; j++) {
if (j == 3) {
continue outer; // 跳过外层循环的当前轮次(i不变,直接进入i++)
}
System.out.print(j + " ");
}
System.out.println();
}
}
}
输出:
plaintext
1 2
1 2
1 2
(每次 j=3 时,直接跳过外层循环的当前轮次,内层后续 j=4、j=5 不执行,外层直接进入下一轮 i++)
注意事项(新手必看)
- ❌ 不要滥用:标签语句会让代码可读性变差,只有双层 / 多层循环需要精准跳转时才用(日常开发中很少用到)。
- ✅ 标签位置:标签必须紧挨着循环 / 语句块(比如
outer: for(...)),不能单独写。 - ❌ 不能跨方法:标签只能在当前方法内生效,不能跳转到其他方法的循环。
总结
- 标签语句是给循环 / 语句块加 “名字”,配合
break/continue实现多层循环的精准跳转。 break 标签名:直接退出标签对应的循环;continue 标签名:跳过标签循环的当前轮次。- 新手阶段除非遇到多层循环跳转的场景,否则优先用普通
break/continue,避免代码混乱。
更多推荐

所有评论(0)