在JAVA中,什么时候用if,什么时候用swtich!用这两个用区别吗?

2025-03-24 09:00:12
推荐回答(5个)
回答1:

很大区别啊.
if括号里只要是返回boolean的语句都可以放进去,switch1.7以前只能比较特定的基本类型,1.7以后好像String也可以。
而且一个更深层的考虑应该只使用if而避免使用switch:
当你考虑使用switch来代替if的时候已经证明这个条件判断很有可能是一个选择,而不是逻辑判断,选择的分支在后续极有可能会被扩展,所以你应该定义接口和各个选择的子类来完成这个选择,而不是简单地扩展if...else或者switch。

回答2:

在分支很多的时候用switch, 分支较少用if。当然也没有绝对的要求,这俩个都是条件分支语句,要说区别估计就是执行效率还有代码简洁程度的区别,你要是爱写很多个if else也没问题。

注意switch(这里面参数智能是byte,int,shot,char) ----貌似最新的jdk8支持string
还有switch每个分支需要加上 break;最后要加上default:xxxx,break;

回答3:

都可以,看个人习惯,情况多的时候用switch会比较清爽,比较省时间,情况比较少就用if比较简单

回答4:

switch 有很多限制的,比如说只能接受枚举,字符,数字。个人介意你用if else好些
, 如果判读比较多的话,再考虑改成switch,在性能方面这两者没什么大的区别!

望采纳...

回答5:

swtich后面一般接固定类型的常量
if 的用途广一些,
一般是怎么方便怎怎么用了