慕运维3449123
2019-08-05 14:35
例子中有这么一种情况:没有遇见break时输出所有case块内容,但是以习题来说的话为什么不可以全部输出呢?

public class HelloWorld {
public static void main(String[] args) {
char today='日';
switch(today)
{
case '一':
case '三':
case '五':
System.out.println("早餐吃包子");
case '二':
case '四':
case '六':
System.out.println("早餐吃油条");
case '日':
System.out.println("吃主席套餐");
}
}
}
但如果改成char today='一'; 就会全部输出了
因为你输入的是日,已经排在最后面一个,所以前面的输出你是看不到的,假设你输入的是一,后面会全部输出的,记住,switch遇到break后就会立刻停止语句体的执行。
例子的情况是执行符合条件方案后如果没有碰到break就会把接下去的方案也执行了直至没有方案 你这个是符合条件的方案已经是最后一个方案了 接下去没方案执行 所以结果也只执行最后一个方案
你没有加 break 语句。
System.out.println("早餐吃包子");
break;
Java入门第一季(IDEA工具)
1168060 学习 · 18753 问题
相似问题