问答详情
源自:4-6 Java条件语句之 switch

case后面的值的意义何在?

case 值1 后若无break会跟着执行case2后的代码块,那么case后的值有何意义?不是需要匹配才执行吗?

提问者:要当程序员 2018-02-27 21:01

个回答

  • Nil丶菜菜
    2018-03-20 17:34:45

    在这节课的第三点里说后面没有break,就会跟着执行后面的代码

    这个应该像之前的(与、或、非的课程)里面提到的,程序“短路”现象一样。课程源文:https://www.imooc.com/code/1301

    就像

    boolean A=true;
    boolean B=true;
    boolean C=False;
    
    System.out.println( A || B && C ); //结果为True

    程序执行到前面,若已经满足条件,则后面的判断直接跳过


    所以,这节课第三点中举的例子,虽然名次定为1,可因为中间没有break打断

    所以程序检测到符合条件的(case1)后,后面不再进行判断

    直接把后面的代码全部输出了


  • SamaPrince
    2018-02-27 21:32:51

    和switch()括号中的值进行匹配啊,case后面的值类似于选择题中的ABCD四个选项,哪个和switch()括号中的一样,就执行相应的后面的代码。