这个区别大了去了,switch语句是并列判断的,例如:
switch(x)
{
case 0:
System.out.println("1");
break;
case 1:
System.out.println("1");
break;
case 2:
System.out.println("1");
break;
default:
break;
}
如果x=1.则直接执行程序2,执行结束后退出这个循环,不会再去判断x是否等于0或2。
而if语句是逐行判断的,条件成立则进入执行语句,不成立则判断下一个条件是否成立。例如:
if( x==0 )
{
System.out.println("1");
}
if( x==1 )
{
System.out.println("1");
}
if( x==2 )
{
System.out.println("1");
}
程序从上往下执行,先判断x是否等于0。如果条件不成立,不执行程序1,继续往下判断x是否等于1,成立则执行程序2。执行完毕后,继续判断x是否等于2,不成立,不执行程序3,继续往下执行别的程序。
而且if能判断区间比如:
if(x>1 && x<6)
{
System.out.println("1");
}
而swith就不行!
希望对你有帮助 |