Java中的if语句是多余的

Tom*_*hao 5 java if-statement return conditional-statements

我在 NetBeans 上看到一个消息:“if 语句是多余的”

我想知道这两个如何相等

public boolean isVowel(char in)
{
    char temp = Character.toLowerCase(in);

    if (temp == 'a' || temp == 'e' || temp == 'i' || temp == 'o' || temp == 'u')
    {
        return true;
    }
    else
    {
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

public boolean isVowel(char in)
{
    char temp = Character.toLowerCase(in);

    return temp == 'a' || temp == 'e' || temp == 'i' || temp == 'o' || temp == 'u';
}
Run Code Online (Sandbox Code Playgroud)

我可以看到如果元音之一与 temp 匹配,它将如何返回 true。但是,我不知道它如何返回 false。如果没有满足任何条件,它会直接返回 false 吗?

已解决:我以错误的方式看待问题。为了让它返回 false,每个条件语句都必须为 false。理想情况下,如果 return 语句等效于以下内容,它将返回 false:

return false || false || false || false || false;
Run Code Online (Sandbox Code Playgroud)

如果满足任何一个条件则为 true

return false || false || false || false || true;
Run Code Online (Sandbox Code Playgroud)

谢谢你们,这真的很有帮助。

bsa*_*ner 4

这两种说法是相同的。

int x = #; //user input
if (x==1) {  //any condition resulting in a true or false
    return true;
} else {
     return false;
}
Run Code Online (Sandbox Code Playgroud)

return (x==1); //same thing, returning true if true, false if false;
Run Code Online (Sandbox Code Playgroud)