当前位置: 首页 > 知识库问答 >
问题:

为什么在OOP(例如Java、C#)中使用break/continue标签是一个不好的做法?[关闭]

危斯伯
2023-03-14
class BreakWithLabelDemo {
    public static void main(String[] args) {

        int[][] arrayOfInts = {
            { 32, 87, 3, 589 },
            { 12, 1076, 2000, 8 },
            { 622, 127, 77, 955 }
        };
        int searchfor = 12;

        int i;
        int j = 0;
        boolean foundIt = false;

    search:
        for (i = 0; i < arrayOfInts.length; i++) {
            for (j = 0; j < arrayOfInts[i].length;
                 j++) {
                if (arrayOfInts[i][j] == searchfor) {
                    foundIt = true;
                    break search;
                }
            }
        }

        if (foundIt) {
            System.out.println("Found " + searchfor +
                               " at " + i + ", " + j);
        } else {
            System.out.println(searchfor +
                               " not in the array");
        }
    }
}

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/branch.html

共有1个答案

邹玮
2023-03-14

告诉你这一点的人可能意味着break和continue是分支语句,比如goto,这是命令式编程的一种机制。

break/continue只允许您跳转到外部语句,这意味着您不能遍历代码中的所有地方。因此,您在相同的方法对象中,所以它与OOP并不是不兼容的。

无论如何,说break和continue不是OOP是毫无意义的。我们可以讨论它们对易感性的影响,但仅此而已。

 类似资料:
  • 问题内容: 有人告诉我,在OOP语言中使用Break and Continue标签不是OOP编程风格。您能否详细说明问题的原因和原因? 窍门在于这个标签词。我的意思是标记为中断/继续。 http://docs.oracle.com/javase/tutorial/java/nutsandbolts/branch.html 问题答案: 告诉您的人,这可能意味着break和Continue是分支语句(

  • 这在本质上不像那样工作吗?使用它甚至是好的实践吗?这让我很不安。

  • 问题内容: 我已经多次听到在HTML 中使用JavaScript事件(例如)是不正确的做法,因为它不利于语义。我想知道不利之处以及如何解决以下代码? 问题答案: 您可能正在谈论简洁的Javascript,看起来像这样: 中央javascript文件中的逻辑如下所示: 优点是 行为(JavaScript)与表示(HTML)分开 没有语言的混合 您正在使用像jQuery这样的javascript框架,

  • 问题内容: 我想知道使用语句退出循环而不是满足循环条件是否是“坏习惯” ? 我对Java和JVM的了解不足,无法知道如何处理循环,因此我想知道我是否通过这样做忽略了一些关键的事情。 这个问题的重点:是否有特定的性能开销? 问题答案: 好主啊 有时,可能会在满足整体要求的循环中发生某些事情,而不满足逻辑循环条件。在这种情况下,用于阻止您毫无意义地循环。 例 在此示例中更有意义的是。每次找到后都继续循

  • 问题内容: 在回答了有关如何使用强制释放Java中的对象(那个家伙正在清除1.5GB的HashMap)的问题后,有人告诉我手动调用是一种不好的做法,但是注释并不完全令人信服。此外,似乎没有人敢于赞成,也没有反对我的答案。 有人告诉我这是一种不好的做法,但是后来我又被告知,垃圾收集器的运行不再系统地停止世界,而且它也可以有效地被JVM用作提示,所以我有点不知所措。 我确实知道,JVM在需要回收内存时

  • 问题内容: 我已经多次听到在HTML 中使用JavaScript事件(例如)是不正确的做法,因为它不利于语义。我想知道不利之处以及如何解决以下代码? 问题答案: 您可能正在谈论简洁的Javascript,看起来像这样: 中央javascript文件中的逻辑如下所示: 优点是 行为(JavaScript)与表示(HTML)分开 没有语言的混合 您正在使用像jQuery这样的javascript框架,