黑马程序员技术交流社区

标题: 效率 [打印本页]

作者: 钱程永    时间: 2014-7-18 20:26
标题: 效率
if,else与switch他们的效率值谁更高,分别适用于什么情况?
作者: zhaoalei    时间: 2014-7-18 21:31
switch 效率高
作者: doubandddk    时间: 2014-7-18 21:41
百度下吧 嘎嘎 楼主来混分的吧
作者: 南柯一梦    时间: 2014-7-18 22:19
if-else用在区间范围判断上效率比switch高;switch用在少量等值判断上效率更高些,且switch只支持int,byte,short和char类型
作者: 李云贵    时间: 2014-7-18 23:05
在多条件下,if ...else...语句要从上至下一个一个的比较,但是switch可以直接命中。如果楼主懂汇编代码的话可以去看下编译后的汇编代码。if语句生成的代码会根据条件的增加而增加,所以多条件下switch会更快,但是switch也有不好的地方,比如支持的类型没有if灵活。
作者: 刘卫强    时间: 2014-7-21 17:05
一般只有2条路选择的时候,推荐使用if..else这种;如果有多条路选择,推荐使用switch(注意:switch(AA),此处的AA在jdk1.7之前,只能为int,或可以自动转为int的[sort,byte,char]以及enum枚举。jdk1.7可以支持String字符串类型);




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2