返回类型为void的方法是否应使用return语句?

Pop*_*ops 18 java return-type

我知道有时候使用return;可以在Java中起到有用的作用,例如在保护中:

public void foo(Bar bar) {
    if(bar == null)
        return;

    // bar is not null, go ahead and do stuff with it
}
Run Code Online (Sandbox Code Playgroud)

但是到达返回类型的方法结束void呢?例如,

public void printMenu() {
    System.out.println("Print out some boilerplate info here, line 1.");
    System.out.println("Print out some boilerplate info here, line 2.");
    System.out.println("Print out some boilerplate info here, line 3.");

    return;
}
Run Code Online (Sandbox Code Playgroud)

除了纯粹的风格偏好,是否有任何理由包括或反对return;?如果是这样,他们是什么?

编辑:嗯,快速回答了.总结下面发布的15个答案:"不."

Chs*_*y76 49

也许你是按行代码付的?

除此之外,最后没有理由放空.

  • 那不是"最终",不是吗?:-)使用`return;`for`void`函数是完全可以接受的,以避免1000个嵌套ifs - OP在他的第一个例子中证明了这一点.问题是关于在关闭括号之前使用`return`这是完全没有意义的. (5认同)
  • 接受比其他同样正确的答案更有趣. (2认同)

Tho*_*ens 10

我自己避开它们.它只是一个无用的代码行.实际上,PMD有一条规则可以检查这些无用的return语句.


Zoo*_*ork 5

即使从样式的角度来看,我也没有理由在最后得到悬挂的回报。毕竟,您知道它将会返回,因为那里有一个末端支撑...