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

case没有遇到break会直接执行下一个case块内容还是需要判断下一个case块是否成立再执行

case没有遇到break会直接执行下一个case块内容还是需要判断下一个case块是否成立再执行

正在回答

6 回答

不会判断,直接就执行下去直到出现break

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

我试了一下,发现如下情况,当句中没有break时,会从第一个case开始判断是否匹配,没遇到匹配值之前,不会输出打印。一旦遇到匹配值,则自此case开始,之后的不会判断是否匹配,全部输出打印。

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

计海峰

当然,是全句无break的情况下。如果后面冒出一个break,那么你知道的,会在此停止
2021-03-31 回复 有任何疑惑可以回复我~

public class HelloWorld {

    public static void main(String[] args) {

char today='三';

switch (today){

   case '一':

   case '三':

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

   case '五':  

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

       break;

   case '二':

   case '四':    

   case '六':   

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

       break;

   case ('日'):

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

       break;

   default:

                System.out.println("星期数有误");

   

}

        

}

}

星期三和星期五后面的语句都执行了,说明没有判断,遇到break 结束。

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

慕慕5006066 提问者

谢谢!
2021-03-12 回复 有任何疑惑可以回复我~

会判断,如果后面的case    值    不相付,则这个值后面的输出语句不会执行,会进行判断下一个case 后的值,

另一种情况是switch的值和后面case后的值都为true时 ,如果case后没有break,没有break的输出语句都会输出。

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

慕仔之万份收益

试了一下不会判断,这个问题提的好。又学到了东西。
2021-03-12 回复 有任何疑惑可以回复我~

break代表跳出;如果没有遇到break会判断下一个case是否成立,符合则执行块的内容,以此内推直到整个switch执行完;

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

举报

0/150
提交
取消

case没有遇到break会直接执行下一个case块内容还是需要判断下一个case块是否成立再执行

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