为了账号安全,请及时绑定邮箱和手机立即绑定

JAVA 中switch的疑问

我就纳闷儿了,既然 switch是来判断后边的表达式(num),为何值不等于 num,也要执行?  就像例子那样,num=1 执行,等于2/3/4 的时候,为啥还执行? 哪来的判断一说? 那写不写case 1/2/3/4 有何意义????

581553820001425d04810245.jpg5815538100013d9101330090.jpg


正在回答

3 回答

不等于num的时候执行default,当num=1的时候执行case 1,当它执行之后没有遇见break等停止标识他会继续执行下面的代码,比如case 2 的输出。

0 回复 有任何疑惑可以回复我~
#1

慕粉4306753 提问者

非常感谢!
2016-10-30 回复 有任何疑惑可以回复我~

public class HelloWorld {

    public static void main(String[] args) {

/* char today='二';

          switch(today){

            case '一':

            System.out.println("吃包子");

            case'二':

            System.out.println("吃油条");

            case'三':

            System.out.println("吃包子");

            case'四':

            System.out.println("吃油条");

            case'五':

            System.out.println("吃包子");

            case'六':

            System.out.println("吃油条");

            default:

            System.out.println("吃主席套餐");

        }*/

        

       /* switch(today){

            case'一':

            case'三':

            case'五':

                System.out.println("吃包子");

                break;

            case'二':

            case'四':

            case'六':

                System.out.println("吃油条");

                break;

                default:

                System.out.println("吃主席套餐");

                break;

        }*/

        int today=9;

    if(today<7){

if(today%2==1){

System.out.println("吃油条");

}else{

System.out.println("吃包子");

}

}else{

System.out.println("吃总统套餐");

}

       

       

        

        

        

        

        

        

        

        

        

        

        

        

        

        

    }

}


0 回复 有任何疑惑可以回复我~

每种情况的后面要加break


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165458    人
  • 解答问题       17585    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

JAVA 中switch的疑问

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信