一文解析Java switch语句

樵夫2022-01-07 11:00

  switch语句用于测试变量与值列表的相等性。 每个值称为一个case,并且针对每种情况检查对应的变量值。

一文解析Java switch语句

  语法

  增强for循环的语法是 :

switch(expression) {
   case value :
      // 执行语句块
      break; // 可选

   case value :
      // 执行语句块
      break; // 可选

   // 可以拥有任意数量的 case 语句。
   default : // 可选
      // 执行语句块
}

  以下是适用于switch语句的规则 :

  switch语句中使用的变量只能是整数,可转换为整数(如:byte,short,char),字符串和枚举类型。

  可以在switch中包含任意数量的case语句。每个case后跟要与之比较的值和冒号。

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

  当switch的变量等于case中的值时,该case之后的语句将一直执行,直到达到break语句。

  当达到break语句时switch终止,控制流跳转到switch语句块后面的下一行代码。

  不是每个case都需要包含break语句。 如果没有指定break语句,则控制流将落到后续case中,直到达到break语句。

  switch语句可以有一个可选的default,它必须出现在switch语句的末尾。 当没有任何case匹配时,执行default中的代码块。default中不需要break语句。

一文解析Java switch语句

  示例1

public class SwitchExample {
    public static void main(String[] args) {
        // 为switch表达式声明一个变量
        int number = 20;
        // Switch表达式
        switch (number) {
        // Case语句
        case 10:
            System.out.println("10");
            break;
        case 20:
            System.out.println("20");
            break;
        case 30:
            System.out.println("30");
            break;
        // Default case statement
        default:
            System.out.println("Not in 10, 20 or 30");
        }
    }
}

  执行上面示例代码,得到以下结果:

20

  示例2

public class SwitchExample {
    public static void main(String args[]) {
        // char grade = args[0].charAt(0);
        char grade = 'B';

        switch (grade) {
        case 'A':
            System.out.println("相当优秀!");
            break;
        case 'B':
        case 'C':
            System.out.println("一般优秀");
            break;
        case 'D':
            System.out.println("还不错");
        case 'F':
            System.out.println("好像不太行");
            break;
        default:
            System.out.println("无效级别");
        }
        System.out.println("您的级别是:" + grade);
    }
}

  执行上面示例代码,得到以下结果:

一般优秀
您的级别是:B

  以上就是小编为大家整理发布的“一文解析Java switch语句”一文,更多相关内容尽在开课吧广场Java教程频道。

免责声明:本站所提供的内容均来源于网友提供或网络搜集,由本站编辑整理,仅供个人研究、交流学习使用。如涉及版权问题,请联系本站管理员予以更改或删除。
有用
分享