Day12-switch

xiaokunzhong / 2024-10-10 / 原文

Day12-switch

switch 多选择结构

多选择结构还有一个实现方式就是 switch case 语句。

switch case 语句判断一个变量与一系列值中某个值是否相等:每个值称为一个分支。

switch 语句中的变量类型可以是:

byte、short、int 或者 char。

从 Java SE 7 ,开始 switch 支持字符串 String 类型了,

同时 case 标签必须为字符串常量或字面量。

switch(expression){
    case value : 
       ∥语句
       break; ∥可选
    case value : 
       ∥语句
       break; ∥可选
∥ 你可以有任意数量的 case 语句
    default :∥可选
∥语句
}


//可选;可写可不写

示例:

(1)等级为C,想在等级匹配机制里面,A:优秀;B:良好;C:及格;D:再接再厉;E:没戏了。里面进行匹配,输出——及格

char grade='C';


        switch(grade){
            case 'A':
                System.out.println("优秀!!!!!!!!");
                break;
            case 'B':
                System.out.println("良好");
                break;
            case'C':
                System.out.println("及格");
                break;
            case'D':
                System.out.println("再接再厉");
                break;
            case'E':
                System.out.println("没戏了");
                break;
        }
        //输出结果:及格

(2)等级为C,想在等级匹配机制里面,A:优秀;B:良好;C:及格;D:再接再厉;E:没戏了。里面进行匹配,输出——及格、再接再厉、没戏了

 char grade='C';


        switch(grade){
            case 'A':
                System.out.println("优秀!!!!!!!!");
                break;
            case 'B':
                System.out.println("良好");
                break;
            case'C':
                System.out.println("及格");

            case'D':
                System.out.println("再接再厉");

            case'E':
                System.out.println("没戏了");

        }
        /*输出结果:及格
          再接再厉
          没戏了
        */

(3)等级为F,想在等级匹配机制里面,A:优秀;B:良好;C:及格;D:再接再厉;E:没戏了。里面进行匹配,输出——太差劲了啊啊啊啊啊啊啊啊啊啊

char grade = 'F';


        switch (grade) {
            case 'A':
                System.out.println("优秀!!!!!!!!");
                break;
            case 'B':
                System.out.println("良好");
                break;
            case 'C':
                System.out.println("及格");

            case 'D':
                System.out.println("再接再厉");

            case 'E':
                System.out.println("没戏了");
            default:
                System.out.println("太差劲了啊啊啊啊啊啊啊啊啊啊");
        }
        /*输出结果:及格
          再接再厉
          没戏了
        */

总结:

case穿透————switch匹配某一个值。匹配的case如果没有break。则输出该case下面的所有结果。若不符合所有case,则输出default的值

从 Java SE 7 ,开始 switch 支持字符串 String 类型了,的理解:

//从 Java SE 7 ,开始 switch 支持字符串 String 类型了,
        String name="你";
        switch(name){
            case "你":
                System.out.println("你");

            case "好":
                System.out.println("好");

            case "帅":
                System.out.println("帅");

            case "啊":
                System.out.println("啊");

            case "哥哥":
                System.out.println("哥哥");
                
            default :
                System.out.println("嘿嘿");


        }