在 Java 的 switch 语句中,break 是可以“省略”的,但不一定推荐这么做,具体取决于你想实现什么逻辑。
break 的作用在传统的 switch 语句中:
switch (x) {
case 1:
System.out.println("A");
break;
case 2:
System.out.println("B");
break;
}
break 的作用是 跳出 switchswitch (x) {
case 1:
System.out.println("A");
case 2:
System.out.println("B");
}
当 x == 1 时,输出:
A
B
原因是:
执行完 case 1 后,没有 break,会继续执行后面的 case。
switch (day) {
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("工作日");
break;
case 6:
case 7:
System.out.println("周末");
break;
}
这是 合理使用省略 break 的场景。
switch (x) {
case 1:
System.out.println("one");
case 2:
System.out.println("two");
}
容易引发逻辑错误。
switch 表达式(推荐)从 Java 12 开始(正式在 Java 14),可以使用 switch 表达式:
String result = switch (x) {
case 1 -> "A";
case 2 -> "B";
default -> "Unknown";
};
✅ 特点:
| 情况 | 能否省略 break |
|---|---|
传统 switch 语句 |
✅ 可以(会穿透) |
| 想避免穿透 | ❌ 不能省略 |
| 多个 case 共用逻辑 | ✅ 推荐省略 |
Java 12+ switch 表达式 |
✅ 完全不用 break |
如果你愿意,我可以帮你把旧代码改成 更安全的 switch 表达式写法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。