使用多个 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 不添加任何东西,因此它是噪音。有些人更喜欢拥有其他东西。我个人认为没有其他代码更容易理解。