//switch语句穿透问题
int a =2;
switch(a){
case 1:
case 2:
case 3:
System.out.println("switch语句穿透");
break;
case 5:
System.out.println("碰到break跳出switch语句");
default:
System.out.println("以上情况都不存在执行");
执行结果:switch语句穿透
总结:以上程序可以看出来,switch语句中每种情况在没有break的情况下会继续往下执行,即使这种情况与条件不符(如上述例子中a=2,但是依然执行了case 3其中的语句),也会继续执行,知道碰到break语句结束,上面case 5的情况并没有执行,说明在case 3 中的break语句中结束。