public boolean percentDepreciatedOutOfRange() {
if (percentDepreciated < DEPRECIATION_MIN || percentDepreciated > DEPRECIATION_MAX) {
return true;
}
else {
return false;
}
}
上面的代码可以在没有else语句的情况下编写,而在if语句之后仅包含
return false;
并仍然具有相同的结果吗?如果是这样,为什么?这就是我的意思public boolean percentDepreciatedOutOfRange() {
if (percentDepreciated < DEPRECIATION_MIN || percentDepreciated > DEPRECIATION_MAX) {
return true;
}
return false;
}
最佳答案
你应该写
public boolean percentDepreciatedOutOfRange() {
return percentDepreciated < DEPRECIATION_MIN || percentDepreciated > DEPRECIATION_MAX);
}
更具可读性。避免像
If (xxx) { return true; }
else { return false; }
因为if只会在表达式周围增加噪音。
之所以合法,是因为布尔类型在计算if表达式和方法的返回类型时是相同的。