Java 教程

Java控制语句

面向对象编程

Java内置类

Java文件处理

Java错误与异常

Java多线程

Java同步

Java网络编程

Java集合

Java接口

Java数据结构

Java集合算法

高级Java

Java杂项

Java APIs & 框架

Java类引用

Java有用资源

Java - case关键字



case关键字

**Java case关键字**是与switch语句一起使用的条件标签,它允许测试变量与值的列表是否相等。每个值称为一个**case**,正在切换的变量将针对每个**case**进行检查。

语法

**case关键字**与switch语句的语法

switch(expression) {
   case value :
      // Statements
      break; // optional
   
   case value :
      // Statements
      break; // optional
   
   // You can have any number of case statements.
   default : // Optional
      // Statements
}

规则

以下规则适用于带有switch语句的case关键字:

  • 在switch语句中使用的变量只能是整数、可转换整数(byte、short、char)、字符串和枚举

  • 可以在一个switch中使用任意数量的case语句。每个case后跟要比较的值和一个冒号。

  • case的值必须与switch中的变量的数据类型相同,并且必须是常量或字面量。

  • 当正在切换的变量等于某个case时,将执行该case后的语句,直到遇到break语句。

  • 当遇到break语句时,switch将终止,控制流跳转到switch语句后的下一行。

  • 并非每个case都需要包含break。如果没有出现break,控制流将贯穿到后续的case,直到遇到break。

  • switch语句可以有一个可选的default case,它必须出现在switch的末尾。default case可用于在没有一个case为true时执行任务。default case不需要break。

流程图

Switch Statement

case关键字示例

示例1

在这个例子中,我们展示了switch语句的使用,其中case基于char。我们创建了一个变量grade。根据grade的值,检查每个case。如果满足一个case并且存在break语句,则不检查后续的case。

public class Test {

   public static void main(String args[]) {
      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

示例2

在这个例子中,我们展示了switch语句的使用,其中case基于int。我们创建了一个变量grade。根据grade的值,检查每个case。如果满足一个case并且存在break语句,则不检查后续的case。

public class Test {

   public static void main(String args[]) {
      int grade = 3;

      switch(grade) {
         case 1 :
            System.out.println("Excellent!"); 
            break;
         case 2 :
         case 3 :
            System.out.println("Well done");
            break;
         case 4 :
            System.out.println("You passed");
         case 5 :
            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 3

示例3

在这个例子中,我们展示了switch语句的使用,其中case基于String。我们创建了一个变量grade。根据grade的值,检查每个case。如果满足一个case并且存在break语句,则不检查后续的case。

public class Test {

   public static void main(String args[]) {
      String 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
java_basic_syntax.htm
广告