使用多个 if 语句而不是 else if 当每个语句 return something
Using multiple if statements instead of else if when each statement return something
我写了一段代码,看起来像这样。
public boolean check(String i){
if(i.isEmpty()){
doSomething();
return true;
}
else if(i.equals("something")){
doSomethingElse();
return true;
}
return false;
}
在代码审查期间,我收到了删除 "else if" 块的评论,因为第一个 "if" 块有一个 return 语句,这使得另一个块无法访问。
所以我很好奇,当每个块都在 return 时,使用多个 "if" 语句是否比 "else if" 有任何优势。
在 "else if" 上使用多个 if 语句是否会提高代码性能或可读性?为什么在这种情况下,多个 "if" 优于 "else if"?
我知道功能方面它们是相同的。
我认为您需要与代码审阅者交谈。如果“if”语句 returns false
,我很确定 else if 是可达的
在你的代码中
else if(i.equals("something")){ 不是无法访问的代码。当输入为非空值时,它将执行 else if 块并且输入值等于 "something" 然后执行 else if 块中的语句。
根据业务场景,我们需要使用 if elseIf 。如果我们只使用 if 语句,每个 if 条件都会被求值。执行评估需要一些时间。
如果我们知道我们需要在 true 情况下执行一些操作,而在 false 情况下需要执行一些操作,那么最好使用 if elseif ..
这与是否可达有关。如果is不为空则到达else。
我认为一旦它进入第一个 if flow 就会 return 那么 else 就没有意义了。换句话说,else 不添加任何东西,因此它是噪音。有些人更喜欢拥有其他东西。我个人认为没有其他代码更容易理解。
我写了一段代码,看起来像这样。
public boolean check(String i){
if(i.isEmpty()){
doSomething();
return true;
}
else if(i.equals("something")){
doSomethingElse();
return true;
}
return false;
}
在代码审查期间,我收到了删除 "else if" 块的评论,因为第一个 "if" 块有一个 return 语句,这使得另一个块无法访问。
所以我很好奇,当每个块都在 return 时,使用多个 "if" 语句是否比 "else if" 有任何优势。 在 "else if" 上使用多个 if 语句是否会提高代码性能或可读性?为什么在这种情况下,多个 "if" 优于 "else if"? 我知道功能方面它们是相同的。
我认为您需要与代码审阅者交谈。如果“if”语句 returns false
,我很确定 else if 是可达的在你的代码中 else if(i.equals("something")){ 不是无法访问的代码。当输入为非空值时,它将执行 else if 块并且输入值等于 "something" 然后执行 else if 块中的语句。
根据业务场景,我们需要使用 if elseIf 。如果我们只使用 if 语句,每个 if 条件都会被求值。执行评估需要一些时间。
如果我们知道我们需要在 true 情况下执行一些操作,而在 false 情况下需要执行一些操作,那么最好使用 if elseif ..
这与是否可达有关。如果is不为空则到达else。
我认为一旦它进入第一个 if flow 就会 return 那么 else 就没有意义了。换句话说,else 不添加任何东西,因此它是噪音。有些人更喜欢拥有其他东西。我个人认为没有其他代码更容易理解。