Java 12引入了一个新的特性,即Switch表达式。Switch表达式允许我们使用更简洁和易读的语法来编写条件分支代码。在传统的Switch语句中,我们需要使用break语句来终止每个case分支,而在Switch表达式中,我们可以直接返回一个值。
以下是一个使用Switch表达式的示例:
public class SwitchExample {
public static void main(String[] args) {
int day = 3;
String dayName = switch (day) {
case 1 -> "Monday";
case 2 -> "Tuesday";
case 3 -> "Wednesday";
case 4 -> "Thursday";
case 5 -> "Friday";
case 6 -> "Saturday";
case 7 -> "Sunday";
default -> throw new IllegalStateException("Unexpected value: " + day);
};
System.out.println("Today is " + dayName);
}
}
在上面的示例中,我们使用Switch表达式根据给定的数字返回对应的星期几名称。注意到每个case分支后面使用了箭头符号->
来指定返回的值。此外,我们还可以使用default
关键字来处理未匹配到任何case的情况。
Switch表达式还支持多个值的匹配,例如:
public class SwitchExample {
public static void main(String[] args) {
int day = 3;
String dayName = switch (day) {
case 1, 2, 3, 4, 5 -> "Weekday";
case 6, 7 -> "Weekend";
default -> throw new IllegalStateException("Unexpected value: " + day);
};
System.out.println("Today is " + dayName);
}
}
总的来说,Switch表达式提供了一种更简洁、易读和灵活的方式来编写条件分支代码,使得代码更加可读性和易维护性。