【发布时间】:2013-05-09 10:55:58
【问题描述】:
所以我已经看到很多情况下,标签被用于 for 循环中以中断,尤其是在双重嵌套循环中。
这是唯一可以使用它们的情况吗?或者还有其他我不知道的常见用途。我觉得它是一个我从未使用过的java工具!
【问题讨论】:
-
由于编程语言滥用
goto语句的历史,它的使用非常谨慎,这可能导致“意大利面条”代码,即难以遵循且无法调试的代码。 -
恕我直言标签显示了使用它们的开发人员的糟糕设计和懒惰。应不惜一切代价避免它们,特别是由于 HFOE 所述的所有原因
-
Goto 在 Java 中不起作用。也许他们会在 Java 10 中添加它,以纪念 Dijkstra。
-
那么除了for循环之外,它们没有用吗?即使那样我可能也不应该使用?
-
在几十年的编程(Java 中的几年)中,我可以用一只手来计算我看到正确使用标签的次数。在 Java 中,它们都与打破循环有关。即便如此,它们也让我呻吟,我相信如果没有它们,代码会更干净(更容易调试和阅读),只要我有时间清理它(删除它们)。它们可以在任何地方使用,但它们会使调试变得困难,并且每次使用一只小猫都会杀死 5 只小猫。 ;)