在Java中,`switch`语句用于基于不同的条件执行不同的代码块,以下是一个简单的`switch`语句的例子:
public class SwitchExample { public static void main(String[] args) { int day = 3; String dayString; switch (day) { case 1: dayString = "Monday"; break; case 2: dayString = "Tuesday"; break; case 3: dayString = "Wednesday"; break; case 4: dayString = "Thursday"; break; case 5: dayString = "Friday"; break; case 6: dayString = "Saturday"; break; case 7: dayString = "Sunday"; break; default: dayString = "Invalid day"; break; } System.out.println("Today is " + dayString); } }
在这个例子中,我们根据`day`变量的值来确定今天是星期几,`switch`语句检查`day`的值,并与每个`case`语句进行比较,如果找到匹配的`case`,则执行相应的代码块,并使用`break`语句退出`switch`语句,如果没有找到匹配的`case`,则执行`default`代码块。
从Java 12开始,`switch`语句还支持新的表达式形式,允许更简洁和灵活的处理方式,以下是使用新`switch`表达式的相同例子:
public class SwitchExpressionExample { public static void main(String[] args) { int day = 3; String dayString = switch (day) { case 1 -> "Monday"; case 2 -> "Tuesday"; case 3 -> "Wednesday"; case 4 -> "Thursday"; case 5 -> "Friday"; case 6 -> "Saturday"; case 7 -> "Sunday"; default -> "Invalid day"; }; System.out.println("Today is " + dayString); } }
在这个新形式的`switch`表达式中,每个`case`后面直接跟着箭头(`->`)和要执行的表达式,这使得代码更加简洁和易读。