如何从try/catch块中断而不在Java中抛出异常

我需要一种方法,从try / catch块的中间,而不抛出异常。
类似于break并在for循环中继续的东西。
这可能吗?

我一直在得到奇怪的直接关于抛出一个自定义异常(命名为“BreakContinueException”),这个简单在它的catch处理程序什么也没做。我相信这是非常扭曲。

所以,任何直接的解决方案,我不知道?

最佳答案
正确的方法是通过将try-catch块放在单独的方法中来分解方法,并使用return语句:

public void someMethod() {
    try {
        ...
        if (condition)
            return;
        ...
    } catch (SomeException e) {
        ...
    }
}

如果代码涉及到很多局部变量,你也可以考虑使用来自标记块的break,正如Stephen C所建议的:

label: try {
    ...
    if (condition)
        break label;
    ...
} catch (SomeException e) {
    ...
}

转载注明原文:如何从try/catch块中断而不在Java中抛出异常 - 代码日志