黑马程序员技术交流社区

标题: java里switch的执行顺序 [打印本页]

作者: H_shaohui    时间: 2016-4-19 21:28
标题: java里switch的执行顺序
   public class Switch {
    public static void main(String[] args)
     {
        int x=0;
       switch(x)
       {
        default:
            System.out.println("default");
        case 1:
            System.out.println(1);
        case 2:
            System.out.println(2);
        }
    }
}

输出结果如下:
default
1
2



public class Switch {
    public static void main(String[] args) {
        int x = 0;
        switch (x) {
        default:
            System.out.println("default");
        case 0:
            System.out.println(0);
        case 1:
            System.out.println(1);
       case 2:
            System.out.println(2);
        }
    }
}

输出结果如下:
0
1
2



public class Switch {
    public static void main(String[] args) {
        int x = 0;
        switch (x) {
        case 0:
            System.out.println(0);
        case 1:
            System.out.println(1);
        case 2:
            System.out.println(2);
        default:
            System.out.println("default");
        }
    }
}

输出结果如下:
0
1
2
default


总结:
switch表达式的值决定选择哪个case分支,如果找不到相应的分支,就直接从"default" 开始输出。
当程序执行一条case语句后,因为例子中的case分支中没有break 和return语句,所以程序会执行紧接于其后的语句。 










欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2