我对 Java 中 return 语句中布尔变量的含义(评估)有疑问。
我知道:
if (var) { ... }
是相同的:
if (var==true) { ... }
在第二种情况下,我们明确地说 var==true,但我们不需要这样做,因为 Java 无论如何都会将 var 评估为 true。我希望我已经正确理解了这一点。
我的问题是:返回布尔变量时是否相同?当我们有一个 return 声明?
例如,一个任务指定:只有当 b < a 时,looksBetter() 方法才会返回 true。我的解决方案是:
public boolean looksBetter() {
if (b < a) {
return true;
} else {
return false;
}
}
简单的答案是:
public boolean lookBetter() {
return b < a;
}
所以,这里我们似乎再次有了这个隐含的假设,即如果 b < a == true,则方法的返回为 true。对不起......这似乎很微不足道,但我对此感到不舒服,我不知道为什么。谢谢你。