读书人

问个很简单的java有关问题

发布时间: 2012-02-08 19:52:21 作者: rapoo

问个很简单的java问题!
public class Nb
{
public static void main( String []args )
{
int x=0;
if(x>0)
x=1;
switch(x){
case 1:
System.out.println(1);
case 0:
System.out.println(0);
case 2:
System.out.println(2);
break;
case 3:
System.out.println(3);
default:
System.out.println(4);
break;
}
}
}

执行结果是:0 2 为什么有2个结果?为什么结果是0和2?

[解决办法]
应该是switch穿透问题...
一般在每个case 语句后都要加break的。。

[解决办法]
就是说你找到满意的结果之后要跳出switch。
break就是跳出。
不然当然要往下执行。直到遇到break或者结尾。

读书人网 >J2SE开发

热点推荐