if :
1、具体的值进行判断
2、区间的判断
3、对运算的结果是boolen类型表达式进行判断 true flash
switch:
1、对具体的值进行判断
2、值的个数是固定的
对于几个固定的值判断,建议使用switch 语句。因为switch 语句会将具体的答案都加载进内存,效率相对高一点
———————————————
if语句可以做条件判断也可以做区间判断,在执行一个if内容后自动结束,且else只能放在最后面执行。switch只能做固定值判断,case的值为传入的参数,遇到break结束,default可以放在任何位置。
if(条件1) {
执行条件1;
} else if(条件2) {
执行条件2;
} else {
执行条件3;
}
switch (参数) {
case 1 :
执行条件1;
break;
case 2 :
执行条件2;
break;
default :
执行条件3;
}
性能问题:一般建议在固定值判断的时候使用switch,在判断区间范围的时候使用if。switch的查找类似于二叉树,而if则使用的是线性查找,所以当固定值判断的时候,参数条件在三个以内的时候使用哪个无所谓,但判断条件大于三个的时候使用switch性能更好一些。