不知道你指的是不是if和case语句,我假设你是这个意思。
其实两者在逻辑效果上来讲并不会有啥区别,区别在于效率上:
举一个很简单的例子:
if(A>B)
{
A=B;
}
else
{
B=A;
}
如果将这个例子放在switch 语句中,也并不是不能实现,但是实现起来可能会比较麻烦一些,因为在switch语句中 case中要求的是常量,一般是不能进行逻辑判断的, 所以这也是if语句优于switch语句的地方! 但是如果您判断的都是几个常量的数据,我建议您最好采用switch语句
switch(A)
{
case:xxxx
///程序代码
break;
case:xxxxxx
///程序代码
break;
}
要知道常量寻址速度最快的寻址方式,所以显然用case语句执行的效率更高:
但是并不是所有的地方都能用switch语句的,要知道 case中要求的是常量,这就是限制switch语句最大的地方。
这种都没多大的区别。你就注意一个if对应一个大括号就行
如果用if else 语句的话就是注意每个大括号包括内容的逻辑就行了。
用if else 这种语句,尤其是比较多的时候注意的是每个if的范围,相同等级if之间的范围,比如
if(i <3){}else if(i <4){}
注意下这种范围是不是重复了,把逻辑设的严谨一些。
switch 等价于 if elseif
嘿嘿