java if和switch的区别
2个回答
展开全部
从使用表面看
if是分支只有两个,如果情况多中就得多个if-else
swith可以同时支持任意多个分支
从设计上看
if就是用来根据真假真正做分支用的,分支执行非此及彼,如果多个分支就得多重判断,无论前面的条件是否成立都得判断一遍,直至找到真正的true,就找到这个程序的分支流程而走开了
swith则是一种通道开关设计,它的条件跟真假无关,无需逐一判断,它寻找的是一个通道入口,给定一个值立即就按它对应的入口执行后续流程而不是彻底走开,若要彻底走开还得特意break或者return一下
if是分支只有两个,如果情况多中就得多个if-else
swith可以同时支持任意多个分支
从设计上看
if就是用来根据真假真正做分支用的,分支执行非此及彼,如果多个分支就得多重判断,无论前面的条件是否成立都得判断一遍,直至找到真正的true,就找到这个程序的分支流程而走开了
swith则是一种通道开关设计,它的条件跟真假无关,无需逐一判断,它寻找的是一个通道入口,给定一个值立即就按它对应的入口执行后续流程而不是彻底走开,若要彻底走开还得特意break或者return一下
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if和switch都是条件判断语句,在效果上是没有什么差别的,而不同,我们可以从效率上来讲~ 举一个很简单的例子: if(A>B) {A=B;} else {B=A; } 如果将这个例子放在switch 语句中,也并不是不能实现,但是实现起来可能会比较麻烦一些,因为在switch语句中 case中要求的是常量,一般是不能进行逻辑判断的, 所以这也是if语句优于switch语句的地方! 但是如果您判断的都是几个常量的数据,我建议您最好采用switch语句,如下: switch(A) { case:xxxx ///程序代码 break; case:xxxxxx ///程序代码 break; } http://www.csdnit.com/ 这样的语句,虽然if语句也是能实现的,但是性能就比switch差的有点远了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |