Java 中的 switch case 语句是什么?如何使用它?
switch 语句允许将变量与值的列表进行相等性测试。每个值称为一个 case,系统会检查被切换的变量是否与每个 case 匹配。
语法
switch(expression) { case value : // Statements break; case value : // Statements break; // You can have any number of case statements. default : // Statements }
switch 语句遵循以下规则:
- switch 语句中使用的变量只能是整数、可转换为整数的类型(byte、short、char)、字符串和枚举。
- switch 语句中可以包含任意数量的 case 语句。每个 case 后面跟着要比较的值和一个冒号。
- case 的值必须与 switch 中变量的数据类型相同,并且必须是常量或字面量。
- 当被切换的变量等于某个 case 时,该 case 后面的语句将执行,直到遇到 break 语句。
- 遇到 break 语句时,switch 语句将终止,控制流跳转到 switch 语句后的下一行。
- 并非每个 case 都需要包含 break。如果没有 break,控制流将继续向下执行到后续的 case,直到遇到 break。
- switch 语句可以有一个可选的 default case,它必须出现在 switch 的末尾。当没有一个 case 为 true 时,可以使用 default case 执行任务。default case 不需要 break。
示例
public class Test { public static void main(String args[]) { // char grade = args[0].charAt(0); char grade = 'C'; 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"); case 'F' : System.out.println("Better try again"); break; default : System.out.println("Invalid grade"); } System.out.println("Your grade is " + grade); } }
使用各种命令行参数编译并运行上述程序。这将产生以下结果:
输出
Well done Your grade is C
广告