黑马程序员技术交流社区

标题: if语句和switch语句有什么区别吗 [打印本页]

作者: 牛仔很忙fire    时间: 2015-4-29 22:16
标题: if语句和switch语句有什么区别吗
if语句和switch语句有什么区别吗?求大神指点,具体一点最好。

作者: hoop.zeng    时间: 2015-4-29 22:20
哥们你问的这么抽象  又要具体的回答。。。。。。
我只知道在应用上,需要做范围判断时用if;需要对数目不多的具体数值做判断时,用switch。
作者: 牛仔很忙fire    时间: 2015-4-29 22:21
hoop.zeng 发表于 2015-4-29 22:20
哥们你问的这么抽象  又要具体的回答。。。。。。
我只知道在应用上,需要做范围判断时用if;需要对数目不 ...

非常感谢:handshake
作者: lzh2015    时间: 2015-4-29 22:31
首先,数据类型运用范围就不同,在这switch适合做小数量的工作!
作者: 牛仔很忙fire    时间: 2015-4-29 22:34
也是主要区别吧
作者: 814326663    时间: 2015-4-29 22:35
Swich  适合小范围的  if使用这样的
作者: 黄冬    时间: 2015-4-29 22:41
具体来说,如果是对一个范围的判断或者boolean类型的表达式的判断,用if语句。
如果是对几个数据的判断,一般是选择switch,而且switch的多个数据可以同时被加载到内存中,效率更高。
作者: xiaowen_wu    时间: 2015-4-29 22:47
(1)switch用于做选择使用的。一般用于几个常量的判断。
  switch会把几个常量值直接加载到内存,在判断的时候,效率要比if高。
  所以,针对几个常量的判断,一般选择switch语句。
(2)if 用于做判断使用的。
  常见于对某个范围进行判断,或者几个变量进行判断,还有就是boolean表达式的判断。
(3)switch 可以转换成 if 语句,反之不一定可以
作者: 牛仔很忙fire    时间: 2015-4-30 09:24
xiaowen_wu 发表于 2015-4-29 22:47
(1)switch用于做选择使用的。一般用于几个常量的判断。
  switch会把几个常量值直接加载到内存,在判断的时 ...

谢谢,很详细了。。。。。
作者: 陈明佳    时间: 2015-4-30 09:56
if  与 switch 可以相互转化,如果变量一定是用switch比较好,当变量不确定时用if就比较好
作者: 澂澂    时间: 2015-4-30 15:29
if是做判断,switch是做选择
作者: 2119391569    时间: 2015-4-30 16:53
if和switch语句很像
具体什么场景下,应用那个语句呢?
如果判断的具体数值不多,而是符合byte,short,int,char这四种类型。虽然两个语句都可以使用,建议使用switch语句,因为效率稍高。

其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广!


作者: 理当如此    时间: 2015-4-30 18:20
这种非常基础的问题需要自己摸清楚,如果这都理不清,还是考虑其它的行业

作者: 牛仔很忙fire    时间: 2015-4-30 18:24
2119391569 发表于 2015-4-30 16:53
if和switch语句很像
具体什么场景下,应用那个语句呢?
如果判断的具体数值不多,而是符合byte,short,int,c ...

很好,谢谢
作者: 邓熊财    时间: 2015-4-30 18:30
可以等价交换




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