java - 可以脱离其他类(class)吗?

标签 java label break

我最近重新发现了断回标签的用途。现在我想知道是否可以从另一个类中返回标签。

我想要的示例:

主类

label:
for (Product p : ProductList) {
 if (p.getSet() == true) {
  classHandler();
 }
}

类处理程序.class

someFunction() {
 break label;
}

当我输入此内容时,我实际上尝试在我的 Main 类中创建一个本地函数(这样我就可以调用该函数),但即使在那里我也得到了 undefined label: label 错误。

最佳答案

不,你不能。你不应该这样做。

如果中断的条件存在问题,那么抛出异常将是正确的方法。

否则,您应该执行一些操作,例如返回一个标志,指示是否仍应处理其他产品并在循环中对此使用react。

正如您所注意到的,您甚至无法突破方法边界,这是一件好事breakcontinue 是强大的工具,但如果使用错误的方式,很容易使您的代码变得困惑。例如,隐藏在巨大代码块中的 break 可能很容易被错过,但如果您在方法的最顶部使用 continue 来跳过基于某些内容的迭代条件的话,意图就很明确了。

关于java - 可以脱离其他类(class)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7767203/

相关文章:

java - Java Web 应用程序中的属性文件

java - jackson :忽略 setter/getter ,但不是@JsonView

java - 无法使用 Secret ARN 连接到 Aurora Serverless

swift - 如何将多个 UIStepper 值添加到一个标签?

c# - 如何: Get text index from label by mouse position? C#

java - 中断和继续在 Java 中不起作用

java - 需要实现 Virgil Dobjanschi REST 实现模式的示例 Android REST 客户端项目

ios - "Command failed due to signal: Segmentation fault: 11"- 问题是什么?

c - 当条件满足时,While 循环继续

c++ - 在 Win32 Release模式下查看 VC++ 2010 中准确反汇编的最佳方法是什么?