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

运行成功,输出错误

public class HelloWorld {
    public static void main(String[] args) {
  char today='日';
  switch(today){
      case '一':
      case '三':
      case '五':
          System.out.println("早餐吃包子");
          break;
      case '二':
      case '四':
      case '六':
          System.out.println("早餐吃油条");
          break;
     default:
          System.out.println("主席套餐");
  }
 }
}



提问者:qq_如沐春风_fAEPRZ 2018-10-22 21:00

个回答

  • Singleton1863042
    2018-10-22 23:44:26

    不是肯定会执行,是没有匹配到就会执行default后面的语句,嘎嘎

  • Singleton1863042
    2018-10-22 23:41:24

    你的变量 today的值是'日'(char today='日'),未与例题中下面任何一个case的匹配,就只会输出总是会执行的dafault后面的语句:     System.out.println("主席套餐");

    你应该是理解错了switc语句吧,

    switch(表达式){

        case 值1;

                语句1;

                break;

      case 值2;

                语句2;

                break;

    default:

            语句;

    }

    switch()语句中括号内的表达式与下面的‘值1’,'值2'...进行匹配,有对应的就执行下面的相应的语句。其中default语句是肯定会执行的。