• Java switch case语句


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

    switch(expression){//变量类型可以是byte,short,int,char,String
        case value://case标签后面必须是字符串常量或字面量
            //代码语句,当case的值和变量的值相等时,会执行case里面的代码语句,直到break时跳出switch语句
            break;//遇到break,switch语句终止,case语句不是必要跟着break,没有break出现,程序会执行下一跳,直到break出现
        case calue:
            //代码语句
            break;
        //可以有很多个case语句,每个case语句后面跟着要比较的值和冒号
        default://switch语句包含一个default,一般放在最后,在没有case值和变量值相等的时候执行,不需要break
            //代码语句    
    }

    switch case执行时,一定会先进行匹配,匹配成功返回单签case的值,在根据是否有break判断是否跳出。

    public class Test{
        public static void main(String args[]){
            char grade = 'B';
    
            switch(grade){
                case 'A':
                    System.out.println("优秀");
                    break;
                case 'B':
                    System.out.println("良好");
                    break;  
                case 'C':
                    System.out.println("及格");
                    break;  
                default:
                    System.out.println("不及格");
                }
                System.out.println("成绩为:"+grade);
            }
    }

    运行结果

    良好
    成绩为:良好

    ②如果grade为其他除了ABC以外的字符,会运行default的代码,输出结果为

    public class Test{
        public static void main(String args[]){
            char grade = 'J';
    
            switch(grade){
                case 'A':
                    System.out.println("优秀");
                    break;
                case 'B':
                    System.out.println("良好");
                    break;  
                case 'C':
                    System.out.println("及格");
                    break;  
                default:
                    System.out.println("不及格");
                }
                System.out.println("成绩为:"+grade);
            }
    }
    不及格
    成绩为:不及格

    ③如果存在case没有break,那么在匹配的case之后的没有break的语句都会执行,一直到遇到break

    public class Test{
        public static void main(String args[]){
            int i=1;
    
            switch(grade){
                case 0:
                    System.out.println("0");
                case 1:
                    System.out.println("1");
                case 2:
                    System.out.println("2");
                    break;  
                default:
                    System.out.println("3");
                }
            }
    }
    1
    2
  • 相关阅读:
    推荐大家看 《亵渎》
    vue 过滤器filters的使用以及常见报错小坑(Failed to resolve filter)
    vue 与原生app的对接交互(混合开发)
    vue 3.0使用 BUG解决
    202020211 20209313 《Linux内核原理与分析》第一周作业
    2第一周部分笔记
    Cartographer系列之二——hokuyo激光雷达跑cartographer
    ROS系列之初识gmapping
    Cartographer系列之一——初体验
    SLAM学习资料整理
  • 原文地址:https://www.cnblogs.com/jaci/p/11397183.html
Copyright © 2020-2023  润新知