在许多情况下,您有这样的代码(使用 C 风格的伪代码):
bool checkCondition();
bool doSomething(){
if (checkCondition() == false)
return false;
// do something
return true;
}
我不断重复使用这个模式,每次都想知道是否有更好的方式来表达它?
有时,条件检查可以留给调用者或断言,但通常条件检查必须在函数内部完成。
您可以花哨并使用异常,但结果几乎是相同的代码。
最佳答案
首先我会这样表达否定:
if (!checkCondition())
return false;
此外,只要适用(取决于 block 的长度),我希望在 if 语句中包含肯定条件:
bool doSomething(){
if (checkCondition()) {
// do something
return true;
} else {
return false;
}
}
您还可以在此处删除 else
,因为“if”语句中存在返回。
bool doSomething(){
if (checkCondition()) {
// do something
return true;
}
return false;
}
关于java - 更好地表达 "if false return false"构造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61694635/