重复: 一个函数应该只有一个返回语句吗?
很多时候,您可能有一个方法可以检查多个条件并返回一个状态(现在让我们说布尔值)。定义一个标志,在方法期间设置它,并在最后返回它是否更好:
boolean validate(DomainObject o) {
boolean valid = false;
if (o.property == x) {
valid = true;
} else if (o.property2 == y) {
valid = true;
} ...
return valid;
}
还是在您知道方法的结果后简单地返回更好/更正确?
boolean validate(DomainObject o) {
if (o.property == x) {
return true;
} else if (o.property2 == y) {
return true;
} ...
return false;
}
现在显然可能有 try/catch 块和所有其他类型的条件,但我认为这个概念很清楚。意见?