java - 哪些编程语言支持带有 break 和 continue 语句的标签?

标签 java syntax loops goto label

我最近read关于 java 中的标记语句以及使用 break 和 continue 语句指定标签的能力。还有哪些其他语言支持这种语法?

最佳答案

这是带有类 Java 标签的语言列表;即能够从标记的语句或 block 中分支。

  • Java
  • Javascript
  • C# - C# 支持 goto <label> , 但不是 break <label>continue <label> .
  • Ada - 使用 exit <label>声明。
  • PL/SQL - 使用 exit <label>continue <label>声明。

这是一个具有更通用的 GO TO 构造(或等效构造)的语言列表,允许应用程序分支到同一句法级别或外部级别的任何标签。

  • Pascal
  • FORTRAN - FORTRAN 也有一个“计算的 goto”,其中目标标签在运行时被选择,还有一个“指定的 goto”,这是一种自修改代码的形式。
  • 语言
  • C
  • C++

许多语言(也)支持抛出和捕获异常。这可以被认为是分支到标签的一般形式。然而,有两个重要的区别:

  • “抛出点”没有指定将捕获异常的位置(即标签)。
  • 控制流可能会从当前过程/函数/方法调用中分支出来。

( Ruby's throw / catch 似乎具有正常异常处理和标记语句的方面。但是,我倾向于认为,由于标签不需要词法范围,因此这最接近正常异常处理。)

请补充。

关于java - 哪些编程语言支持带有 break 和 continue 语句的标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3078337/

相关文章:

java - 我的 eclipse luna 无法启动

java - JAVA中以下方法声明、实例化和初始化数组的时间复杂度有什么区别吗?

Java 添加格式为 dd :HH:mm:ss 的日期

C:括号错误

mysql - 在 MySQL 中获取表元数据

objective-c - 在 switch 语句中使用 Obj-C 对象时出现奇怪的编译器错误

apache-flex - Intellij 无法确定 JDK 的版本

python - while python 中不满足条件

c# - 如何在正确的位置生成带有 'and' 的字符串

javascript - 用 q 循环并返回值