关于SWITCH中CASE的执行顺序。

关于SWITCH中CASE的执行顺序其实是一个挺有意思的小问题,带不带break,或者break放置在哪里都会对最终结果产生影响,其实判断最终结果只要找到入口点和最近的一个break就行,然后入口点和这个最近的break之间的所有语句都会被执行。但是有一种比较特别的情况如下:

package zx.package01;

public class Switchtest {
		public static void main(String[] arges)
		{
			int x=10 ;
			switch(x)
			{
			default:
				System.out.println("nothing");
				//break;
			case 5:
				System.out.println("5");
				//break;
			case 4:
				System.out.println("4");
				//break;
			
			case 3:
				System.out.println("3");
				//break;
				}
		}
}

default最放置在最前面,而且x=10意味着不能从case找到入口,那么它的入口就在default了,从default开始执行然后一路向下,直到遇到break。
posted @ 2016-01-20 00:33  明月镇魂  阅读(963)  评论(0编辑  收藏  举报