在 Java 里,switch 语句本身很早就有(从 Java 1.0 开始),但不同版本对 switch 的支持能力不同。下面按版本给你梳理一下:
switch(传统用法)支持版本:Java 1.0+
switch (i) {
case 1:
System.out.println("one");
break;
default:
System.out.println("other");
}
支持的类型:
byteshortcharintswitch 支持 String支持版本:Java 7+
switch (str) {
case "a":
break;
case "b":
break;
}
⚠️ 不支持 null,否则会抛 NullPointerException
switch 支持枚举(enum)支持版本:Java 5+
switch (day) {
case MONDAY:
break;
}
switch 表达式(新写法)支持版本:Java 12(预览) → Java 14(正式)
需要开启:
--enable-preview
int num = switch (x) {
case 1 -> 10;
case 2 -> 20;
default -> 0;
};
或:
switch (x) {
case 1 -> System.out.println("one");
case 2 -> System.out.println("two");
default -> System.out.println("other");
}
✅ 特点:
breakswitch 支持类型总结| 类型 | 最低版本 |
|---|---|
| int / char / byte / short | Java 1.0 |
| enum | Java 5 |
| String | Java 7 |
| switch 表达式 | Java 14 |
switchswitch 表达式switch 表达式如果你愿意,可以告诉我你当前使用的 Java 版本,我可以直接帮你写兼容的写法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。