 
		七犯上场
2015-05-27 00:05
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("吃主席套餐");
  }
    }
}
 
				      case '二'://“:”为中文字符,用编译器看看就出来了
 
				如果不break会执行满足这个case之后的其他case的语句直达switch结束或者遇到break你的today是设置死的。这个代码 只能输出case '日':
System.out.println("吃主席套餐");
你会报错是因为:的原因
 
				没有break,无法跳出循环
周一至周四,可以输出吃饭之类
 
				这个程序你还可以改一下,输入的不是星期几,那就不吃饭了
 
				没有break,不能跳出循环,另外写代码要规范一点,不能写成辣样子
 
				没有break怎么跳出循环
 
				当 switch 后表达式的值和 case 语句后的值相同时,从该位置开始向下执行,直到遇到 break 语句或者 switch 语句块结束;
一般来说都要写break的为了防止发生上述的情况而出问题你可以把char today='日';改为char today='一';试试就会发现有问题了
 
				知道了 谢谢大神
 
				不过你的问题不是出在break而是有个case '二':冒号写错了用英文的冒号
 
				break 不是可以不用写的么??
 
				你忘记写break了
Java入门第一季(IDEA工具)
1168090 学习 · 18754 问题
相似问题
回答 3
回答 2
回答 3
回答 2
回答 3