if语句是多余的java

Nic*_*ick 4 java netbeans

我正在为一个应用程序创建一个类,该类具有检查当前时间是否在指定范围内的方法.

public boolean visitorEntry()
{
    currentTime = LocalTime.now();
    start = LocalTime.of(8, 30);
    finish = LocalTime.of(22,0);   

    if (currentTime.isAfter(start) && currentTime.isBefore(finish))
        return true;
    else return false;
}
Run Code Online (Sandbox Code Playgroud)

我正在使用NetBeans,并被告知if语句是多余的.我认为我的病情在逻辑上是不正确的,总是评估为真,但我不明白为什么.

提前致谢.

Man*_*dis 17

这意味着你可以写:

return currentTime.isAfter(start) && currentTime.isBefore(finish);
Run Code Online (Sandbox Code Playgroud)

在NetBeans上,如果在光标打开时按Alt-Enter if并选择"if语句是多余的",它将自行完成此简化.


Ste*_*neM 7

我想这意味着你可以像这样编写你的函数:

public boolean visitorEntry()
{
    currentTime = LocalTime.now();
    start = LocalTime.of(8, 30);
    finish = LocalTime.of(22,0);   

    return currentTime.isAfter(start) && currentTime.isBefore(finish);
}
Run Code Online (Sandbox Code Playgroud)