Switch Case 语句
发布: (2026年2月4日 GMT+8 12:37)
2 min read
原文: Dev.to
Source: Dev.to
什么是 switch 语句?
Java 中的 switch 关键字用于在多个备选项中执行其中一个代码块。表达式只会被求值一次,并与每个 case 的值进行比较。如果表达式与某个 case 的值匹配,则执行该 case 的代码。如果没有匹配,则执行 default case 的代码。
语法
switch (expression) {
case value1:
// statements
break; // optional
case value2:
// statements
break;
// ...
default:
// statements
}
break语句用于终止switch‑case语句。- 如果省略
break,执行会继续落入后续的 case。
表达式允许的类型
byteshortintcharString(自 Java 7 起)
不允许的类型
longfloatdoubleboolean
default case
default case 是 可选 的。它用于在没有任何指定 case 匹配时处理意外的值。
示例
public class SwitchExample {
public static main(String[] args) {
char grade = 'B';
switch (grade) {
case 'A':
System.out.println("Excellent!");
break;
case 'B':
case 'C':
System.out.println("Well done");
break;
case 'D':
System.out.println("You passed");
break;
case 'F':
System.out.println("Better try again");
break;
default:
System.out.println("Invalid grade");
}
}
}
Java 12 及以上的 switch 表达式语法
Java 12 引入了箭头 (->) 语法用于 switch 表达式,省去了显式 break 语句的需求。
示例(Java 12)
int day = 1;
switch (day) {
case 1, 7 -> System.out.println("Weekend");
case 2, 3, 4, 5, 6 -> System.out.println("Weekday");
default -> System.out.println("Invalid day");
}