为什么 goto 在 Java 和其他高级编程语言中被认为是邪恶的? [复制]

2024-01-05

可能的重复:
java中有goto语句吗? https://stackoverflow.com/questions/2545103/is-there-a-goto-statement-in-java

为什么 goto 在 Java 中被认为是邪恶的,为什么它不适合在高级编程语言中使用?


最简单的答案是,当代码超过特定行数后,它会使代码变得难以管理且难以遵循。

A better reason.. xkcd

图片由以下人员提供xkcd http://xkcd.com/292

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 goto 在 Java 和其他高级编程语言中被认为是邪恶的? [复制] 的相关文章

  • Gradle 构建错误:无法从 https://repo1.maven.org/maven2/io/fabric/tools/gradle/maven-metadata.xml 加载 Maven 元数据

    我在 Android studio 中遇到 gradle 构建错误 如下所示 Error A problem occurred configuring project MyApp Could not resolve all dependen
  • 按键时关闭 ModalWindow

    我希望能够在用户按下某个键 在我的例子中是 ESC 时关闭 ModalWindow 我有一个用于按键的 Javascript 侦听器 它调用取消按钮 ID 的单击事件 jQuery modalWindowInfo closeButtonId
  • 在 Java 中克隆对象 [3 个问题]

    这样做会调用Asub的clone方法吗 或者Asub深度克隆是否正确 如果没有的话 有没有办法通过这种方法对Asub进行深度克隆呢 abstract class Top extends TopMost protected Object cl
  • 序列的排列?

    我有具体数量的数字 现在我想以某种方式显示这个序列的所有可能的排列 例如 如果数字数量为3 我想显示 0 0 0 0 0 1 0 0 2 0 1 0 0 1 1 0 1 2 0 2 0 0 2 1 0 2 2 1 0 0 1 0 1 1 0
  • 动态选择端口号?

    在 Java 中 我需要获取端口号以在同一程序的多个实例之间进行通信 现在 我可以简单地选择一些固定的数字并使用它 但我想知道是否有一种方法可以动态选择端口号 这样我就不必打扰我的用户设置端口号 这是我的一个想法 其工作原理如下 有一个固定
  • 如何使用assertEquals 和 Epsilon 在 JUnit 中断言两个双精度数?

    不推荐使用双打的assertEquals 我发现应该使用带有Epsilon的形式 这是因为双打不可能100 严格 但无论如何我需要比较两个双打 预期结果和实际结果 但我不知道该怎么做 目前我的测试如下 Test public void te
  • Pig Udf 显示结果

    我是 Pig 的新手 我用 Java 编写了一个 udf 并且包含了一个 System out println 其中的声明 我必须知道在 Pig 中运行时该语句在哪里打印 假设你的UDF 扩展了 EvalFunc 您可以使用从返回的 Log
  • 谷歌应用程序引擎会话

    什么是java应用程序引擎 默认会话超时 如果我们将会话超时设置为非常非常长的时间 会不会产生不良影响 因为谷歌应用程序引擎会话默认情况下仅存储在数据存储中 就像facebook一样 每次访问该页面时 会话仍然永远存在 默认会话超时设置为
  • Java 公历日历更改时区

    我正在尝试设置 HOUR OF DAY 字段并更改 GregorianCalendar 日期对象的时区 GregorianCalendar date new GregorianCalendar TimeZone getTimeZone GM
  • 像 Java 这样的静态类型语言中动态方法解析背后的原因是什么

    我对 Java 中引用变量的动态 静态类型和动态方法解析的概念有点困惑 考虑 public class Types Override public boolean equals Object obj System out println i
  • Java ResultSet 如何检查是否有结果

    结果集 http java sun com j2se 1 4 2 docs api java sql ResultSet html没有 hasNext 方法 我想检查 resultSet 是否有任何值 这是正确的方法吗 if resultS
  • tomcat 中受密码保护的应用程序

    我正在使用 JSP Servlet 开发一个Web应用程序 并且我使用了Tomcat 7 0 33 as a web container 所以我的要求是tomcat中的每个应用程序都会password像受保护的manager applica
  • 如何对不同的参数类型使用相同的java方法?

    我的问题 我有 2 个已定义的记录 创建对象请求 更新对象请求 必须通过实用方法进行验证 由于这两个对象具有相同的字段 因此可以对这两种类型应用相同的验证方法 现在我只是使用两种方法进行重载 但它很冗长 public record Crea
  • 关键字“table”附近的语法不正确,无法提取结果集

    我使用 SQL Server 创建了一个项目 其中包含以下文件 UserDAO java public class UserDAO private static SessionFactory sessionFactory static se
  • Android:无法使用 DbHelper 和 Contract 类将数据插入 SQLite

    public class Main2Activity extends AppCompatActivity private EditText editText1 editText2 editText3 editText4 private Bu
  • Opencv Java 灰度

    我编写了以下程序 尝试从彩色转换为灰度 Mat newImage Imgcodecs imread q1 jpg Mat image new Mat new Size newImage cols newImage rows CvType C
  • 如何使用mockito模拟构建器

    我有一个建造者 class Builder private String name private String address public Builder setName String name this name name retur
  • 如何将双精度/浮点四舍五入为二进制精度?

    我正在编写对浮点数执行计算的代码的测试 不出所料 结果很少是准确的 我想在计算结果和预期结果之间设置一个容差 我已经证实 在实践中 使用双精度 在对最后两位有效小数进行四舍五入后 结果始终是正确的 但是usually四舍五入最后一位小数后
  • 如果没有抽象成员,基类是否应该标记为抽象?

    如果一个类没有抽象成员 可以将其标记为抽象吗 即使没有实际理由直接实例化它 除了单元测试 是的 将不应该实例化的基类显式标记为抽象是合理且有益的 即使在没有抽象方法的情况下也是如此 它强制执行通用准则来使非叶类抽象 它阻止其他程序员创建该类
  • Spring Rest 和 Jsonp

    我正在尝试让我的 Spring Rest 控制器返回jsonp但我没有快乐 如果我想返回 json 但我有返回的要求 完全相同的代码可以正常工作jsonp我添加了一个转换器 我在网上找到了用于执行 jsonp 转换的源代码 我正在使用 Sp

随机推荐

  • 陷阱表示

    什么是 C 中的 陷阱表示 一些示例可能有帮助 这适用于 C 吗 鉴于此代码 float f 3 5 int pi int f 并假设sizeof int sizeof float do f and pi具有相同的二进制表示 模式 陷阱表示
  • Symfony Forms - 如何更改 CollectionTypes 项目标签

    这是我在 stackoverflow 上的第一个问题 到目前为止 我只是寻找问题的答案并找到了它们 但现在看来我有一个没有人或至少这里没有人偶然发现的东西 关于我的问题 在我的班级里FieldType extends AbstractTyp
  • /profile 的 iOS MDM 注册配置文件请求使用 java 签署证书

    您好 我们正在尝试使用 java 创建 iOS MDM 服务器 我陷入了必须签署证书并发送 SCEP 的第一点 我首先将 enroll plist 文件发送到 ios 设备 作为响应 当我们从设备上单击 安装 时 我会收到来自 ios 设备
  • 将本地 sqlite 文件同步到 iCloud

    我将 iOS 应用程序中的一些数据直接存储在本地 sqlite 文件中 我选择这样做而不是 CoreData 因为数据需要与非 Apple 平台兼容 现在 我正在尝试找出通过 iCloud 同步此文件的最佳方法 我知道由于多种原因您无法直接
  • 使用 Schematron 和 xsltproc 验证 XSD 架构

    我在验证 SXD 模式与 Schematron 相结合时遇到困难 按照本文中描述的步骤操作guide http www topologi com resources schtrn xsd paper htm我已经在之间合并了 schemat
  • T-SQL 如何从一列中选择没有重复值的行?

    我有一个有 2 列的表ID ID PROJ CSR 该表的内容是 ID ID PROJ CSR 747 222 lt 785 102 786 222 lt 787 223 788 224 我想选择 ID 但如果 ID PROJ CSR 中的
  • 如何更改标签文字?

    我尝试更改标签文本但没有任何效果 function changeText lblTxt var lblAjaxUpdate Key find class label finds the label no problem lblAjaxUpd
  • dataTables 将 css 类分配给分页包装器

    我有一个数据表 其中包含最基本的初始化代码 但是 我需要为出现在表格底部的分页分配一个自定义分页 css 类 我想分配 Twitter 引导分页类 我该怎么做 这是我的代码 document ready function Build the
  • scp 上的管道损坏错误

    我可以通过 ssh 进入我的 ubuntu 盒子 而且我已经scp将我的应用程序的一个版本放到服务器上 但是当我运行时 scp MaryBaked tar gz email protected cdn cgi l email protect
  • 如何从代码中删除缩进?

    让我们考虑这个代码示例 不要看代码 而要看缩进 protected function hashPassword password salt nuts if nuts nuts Kohana config a11n gt nuts passw
  • 在完整树的深度优先和广度优先遍历之间转换的函数

    问题 考虑一棵具有 l 层的完整 k 叉树 节点在广度优先遍历中按其等级标记 按照深度优先遍历中遍历标签的顺序计算标签列表 例如 对于 3 层的二叉树 所需的列表为 0 1 3 7 8 4 9 10 2 5 11 12 6 13 14 一种
  • 如何在 C++ 中构造 ISO 8601 日期时间?

    我正在使用 Azure REST API 他们使用它来创建表存储的请求正文 DateTime UtcNow ToString o 其产生 2012 03 02T04 07 34 0218628Z 它被称为 往返 显然它是一个 ISO 标准
  • 在哪里可以找到 php_svn.dll [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我最近升级到 Windows 版 PHP 5 3 5 我在以前的版本中使用了 subversion 扩
  • 时间序列数据框 python 上的 ARIMA 建模

    我正在尝试使用 ARIMA 模型进行预测 我是新手 我试图绘制我的数据集 每小时数据 的seasonal decompose 下面是图 我想理解这些情节 简短的描述会有帮助 我看到最初没有趋势 一段时间后有上升趋势 我不确定我说的对吗 我想
  • Ruby 中的排序稳定吗?

    Is sort在 Ruby 中稳定吗 也就是说 对于并列的元素sort 它们之间的相对顺序是否保留了原始顺序 例如 给定 a id a int 3 id b int 1 id c int 2 id d int 0 id e int 1 id
  • 如何在Hadoop中自定义Writable类?

    我正在尝试实现可写类 但我不知道如果我的类中有嵌套对象 例如列表等 如何实现可写类 任何人都可以帮助我吗 谢谢 public class StorageClass implements Writable public String xStr
  • 处理时出现用户级 KeeperException

    我知道这已经是之前问过 https stackoverflow com questions 30495057 zookeeper having keeperexception but kafka able to create topics
  • php 按值字母顺序对数组进行排序

    正如标题所示 我想在 php 中按字母顺序对数组进行排序 arr array k gt pig e gt dog 会成为 arr array e gt dog k gt pig 有任何想法吗 编辑 这是我想要排序的实际数组 Array 0
  • 匿名 lambda 直接引用自身

    cheme 或 doscheme 的任何方言是否都有一种 self 运算符 以便匿名 lambda 可以自行重复 而无需执行类似 Y 组合器或在 letrec 等中命名的操作 就像是 lambda n cond n 0 1 else n s
  • 为什么 goto 在 Java 和其他高级编程语言中被认为是邪恶的? [复制]

    这个问题在这里已经有答案了 可能的重复 java中有goto语句吗 https stackoverflow com questions 2545103 is there a goto statement in java 为什么 goto 在