我最近重新发现了断回标签的用途。现在我想知道是否可以从另一个类中返回标签。
我想要的示例:
主类
label:
for (Product p : ProductList) {
if (p.getSet() == true) {
classHandler();
}
}
类处理程序.class
someFunction() {
break label;
}
当我输入此内容时,我实际上尝试在我的 Main
类中创建一个本地函数(这样我就可以调用该函数),但即使在那里我也得到了 undefined label: label
错误。
最佳答案
不,你不能。你不应该这样做。
如果中断的条件存在问题,那么抛出异常将是正确的方法。
否则,您应该执行一些操作,例如返回一个标志,指示是否仍应处理其他产品并在循环中对此使用react。
正如您所注意到的,您甚至无法突破
方法边界,这是一件好事。 break
和 continue
是强大的工具,但如果使用错误的方式,很容易使您的代码变得困惑。例如,隐藏在巨大代码块中的 break
可能很容易被错过,但如果您在方法的最顶部使用 continue
来跳过基于某些内容的迭代条件的话,意图就很明确了。
关于java - 可以脱离其他类(class)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7767203/