条件和方法调用效率

时间:2012-02-22 00:43:55

标签: function methods if-statement

是否有更快,更慢或相同的条件来检查是否应该调用方法,vs调用方法并在那里检查是否应该运行其内容?

if (cond) {
  doThis();
}
method doThis() {
  // do things
}

VS

doThis();
method doThis() {
  if (cond) {
    // do things
  }
}

1 个答案:

答案 0 :(得分:0)

两种方式都不应该明显不同。这应该基于惯例。如果不满足条件,该方法是否仍能正常工作?然后你应该检查方法中的条件:

doThis();
method doThis() {
    if(!cond) throw new InvalidOperationException();
    // do things
}

如果在不满足条件的情况下该方法仍可以运行,但您只想在满足条件时调用该方法,则在方法外进行检查:

if(cond) doThis();
method doThis() {
    // do things
}