是否有更快,更慢或相同的条件来检查是否应该调用方法,vs调用方法并在那里检查是否应该运行其内容?
if (cond) {
doThis();
}
method doThis() {
// do things
}
VS
doThis();
method doThis() {
if (cond) {
// do things
}
}
答案 0 :(得分:0)
两种方式都不应该明显不同。这应该基于惯例。如果不满足条件,该方法是否仍能正常工作?然后你应该检查方法中的条件:
doThis();
method doThis() {
if(!cond) throw new InvalidOperationException();
// do things
}
如果在不满足条件的情况下该方法仍可以运行,但您只想在满足条件时调用该方法,则在方法外进行检查:
if(cond) doThis();
method doThis() {
// do things
}