您的位置首页百科知识

JAVA中的switch语法

JAVA中的switch语法

的有关信息介绍如下:

JAVA中的switch语法

Java 中的 switch 语法

在Java中,switch语句是一种多分支选择结构,用于根据表达式的值执行不同的代码块。相比于一系列的if-else if-else语句,switch语句通常更加简洁和易读。以下是对Java中switch语法的详细解释:

基本语法

switch (expression) { case value1: // 当 expression 等于 value1 时执行的代码 break; // 可选,但通常建议加上以避免“贯穿”(fall-through) case value2: // 当 expression 等于 value2 时执行的代码 break; // 可以有任意数量的 case 语句 default: // 当 expression 不匹配任何 case 值时执行的代码 }

参数说明

  • expression:要评估的表达式(可以是整型、字符型、字符串型或枚举类型)。
  • case label:与表达式比较的值。
  • break:终止当前块的执行并跳出switch语句。如果没有break,程序将继续执行下一个case的代码块,这称为“贯穿”。
  • default:可选部分,当没有任何case匹配时执行的代码。

使用示例

示例 1:基于整数的 switch
int day = 3; String dayName; switch (day) { case 1: dayName = "Sunday"; break; case 2: dayName = "Monday"; break; case 3: dayName = "Tuesday"; break; case 4: dayName = "Wednesday"; break; case 5: dayName = "Thursday"; break; case 6: dayName = "Friday"; break; case 7: dayName = "Saturday"; break; default: dayName = "Invalid day"; break; } System.out.println(dayName); // 输出: Tuesday
示例 2:基于字符的 switch
char grade = 'B'; String result; switch (grade) { case 'A': result = "Excellent!"; break; case 'B': case 'C': result = "Well done"; break; case 'D': result = "You passed"; break; case 'F': result = "Better try again"; break; default: result = "Invalid grade"; break; } System.out.println(result); // 输出: Well done
示例 3:基于字符串的 switch(从Java SE 7开始支持)
String fruit = "apple"; switch (fruit) { case "orange": System.out.println("An orange is an orange."); break; case "banana": System.out.println("A banana is a banana."); break; case "apple": System.out.println("An apple is an apple."); break; default: System.out.println("Unknown fruit."); break; } // 输出: An apple is an apple.
示例 4:使用枚举类型的 switch
enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY } Day today = Day.WEDNESDAY; switch (today) { case MONDAY: System.out.println("Today is Monday!"); break; case FRIDAY: System.out.println("Today is Friday!"); break; case SATURDAY: case SUNDAY: System.out.println("Weekend"); break; default: System.out.println("Midweek"); break; } // 输出: Midweek

注意事项

  1. 每个case块的结尾最好都加上break,除非你有意利用“贯穿”特性来共享代码块。
  2. default块是可选的,但如果需要处理所有未明确列出的情况,最好包含一个default块。
  3. 从Java SE 12开始,引入了增强的switch表达式(也称为“switch表达式”),允许返回值而不仅仅是执行语句。这在某些情况下可以使代码更简洁。

希望这些信息能帮助你更好地理解和使用Java中的switch语句!