Java 中的 switch 本身不能省略,但是否写 break、default、花括号 {},要看具体版本和写法。下面分情况说明。
switch 关键字本身不能省略switch 是 Java 的关键字,必须写,不能省略。
switch (变量) {
case 值1:
...
break;
case 值2:
...
break;
}
break(Java 12+ 推荐写法)在 传统 switch 中:
switch (x) {
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
}
break 不能省略,否则会发生 贯穿(fall-through)。
switch 表达式(Java 12+),可以不用 breakint result = switch (x) {
case 1 -> 10;
case 2 -> 20;
default -> 0;
};
✅ 这种写法:
break{}default 可以省略switch (x) {
case 1:
System.out.println("1");
break;
}
✅ 合法,但不推荐省略 default,除非你确定所有情况都覆盖。
case 后面的 {} 可以省略(传统写法)switch (x) {
case 1:
int a = 1;
System.out.println(a);
break;
}
⚠️ 但如果有变量声明,建议加 {},否则容易作用域冲突。
| 写法 | 是否可省略 | 备注 |
|---|---|---|
switch 关键字 |
❌ 不可省略 | 必须写 |
break |
✅ 可省略 | Java 12+ 箭头写法 |
default |
✅ 可省略 | 不推荐 |
{} |
✅ 可省略 | 有变量时建议加 |
switch 表达式返回值 |
❌ 不可省略 | 表达式必须有值 |
✅ 推荐(Java 12+)
switch (x) {
case 1 -> System.out.println("1");
case 2 -> System.out.println("2");
default -> System.out.println("other");
}
如果你是想了解 是否可以用 if 替代 switch,或 switch 在某种语法糖下能否消失,可以具体说下使用场景,我可以帮你改写。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。