有没有办法结束调用代码所在方法的方法。让我解释一下你是否有这样的代码。
int value;
value = method();
value = 3;
如果我按照我想要的方式工作,那么代码的执行将在第2行结束,第3行永远不会执行。基本上就像在第2行和第3行之间有一个回报。这样的事情可能与Java有关吗?
编辑:好吧我想很多人都误解了我。在第2行的此方法中结束代码的代码应该在method()内部,如果在try中调用它,则不应该在此方法之外避免这种情况。
答案 0 :(得分:4)
你的例子有点抽象,真实的例子可能会产生更好的答案。一般来说,通常有两种方法可以实现:
返回特殊值,例如-1
int method() {
if (/* something is wrong */) {
return -1;
}
// Process as normal and return real value
}
...
int value;
value = method();
if (value == -1) {
value = 3;
}
在method()
中抛出异常int method() throws IllegalStateException {
if (/* something is wrong */) {
throw new IllegalStateException();
}
// Process as normal and return real value
}
...
int value;
try {
value = method();
} catch (IllegalStateException e) {
value = 3;
}
答案 1 :(得分:2)
您可以使用System.exit
java.lang.System.exit(0 /* Status */ );
如果您不想退出,则必须使用return。
在void方法中
int value;
value = method();
return;
或者,如果方法具有与当前方法相同的返回签名
int value;
return value = method();
答案 2 :(得分:1)
如果条件值=您预期的退货,则添加