default位置不同结果不同,为什么不是一样的??

来源:4-6 Java条件语句之 switch

loonge

2014-11-29 16:32

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


写回答 关注

2回答

  • 清风徐来水波不心
    2014-11-29 21:09:18
    已采纳

    这中条件语句有个特点,只要有一个入口进去了,只要后面没有break限制,它会执行后面的每一个语句。degault相当于一个入口,进去之后,由于下面的判断句后面都没有break,所以都执行了一次。

    loonge

    非常感谢!

    2014-12-01 10:54:17

    共 1 条回复 >

  • cmowchenjin
    2014-12-30 11:07:03

    那也就是说,为了default语句后面也应该加break了

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165538 学习 · 17586 问题

查看课程

相似问题