Java中goto实现方法

Java中goto实现方法

  Java语言中goto是保留关键字,没有goto语句,也没有任何使用goto关键字的地方。下面YJBYS小编为大家整理了关于Java中goto实现方法,希望对你有所帮助。

  Java中也可在特定情况下,通过特定的手段,来实现goto的功能。显然Java不愿意开发者随意跳转程序。下面解释两个特定:

  特定情况:只有在循环体内,比如for、while语句(含do.……while语句)中。

  特定手段:语句标签和循环控制关键字break、continue,语法格式是:break/continue 语句标签。

  break、continue和语句标签

  1、语句标签

  语句标签的语法是:标签名:

  语句标签可以定义在方法体内的最后一条语句之前即可。但是语句标签实际使用的机会是与break和continue结合使用的,而break和continue是和循环语句结合使用的.,因此实际上语句标签的使用也是和循环紧密结合的。

  语句标签在被使用的情况,只能定义在循环迭代语句之前,否则编译出错!

  因此,有意义、可使用的标签含义是:指定循环语句的标识!

  2、break、continue语句单独使用

  单独使用情况下:break语句作用是结束当前的循环迭代体,进而执行剩余的语句。

  continue语句的作用是结束本次迭代过程,继续执行下一轮迭代。

  3、break、continue语句结合语句标签的使用

  为什么需要语句标签呢?

  原因是因为程序可能有循环的嵌套,当多层循环嵌套时候,有时候需要一次跳出多级循环,这种情况下就需要结合语句标签才能实现此功能了。

  带标签使用情况下:break中断并跳出标签所指定循环,continue跳转到标签指定的循环处,并继续执行该标签所指定的循环。

  为了说明情况,看看下面的例子:

  import dom;

  /**

  * 语句标签测试

  *

  * @author leizhimin 2009-7-16 11:43:08

  */

  public class TestLable {

  public static void main(String[] args) {

  outer:

  for (int i = 0; i 《 10; i++) {

  .println(“nouter_loop:” + i);

  inner:

  for (int k = 0; i 《 10; k++) {

  .print(k + “ ”);

  int x = new Random。nextInt(10);

  if (x 》 7) {

  .print(“ 》》x == ” + x + “,结束inner循环,继续迭代执行outer循环了!”);

  continue outer;

  }

  if (x == 1) {

  .print(“ 》》x == 1,跳出并结束整个outer和inner循环!”);

  break outer;

  }

  }

  }

  .println(“——》》》所有循环执行完毕!”);

  }

  }

  执行结果:

  outer_loop:0

  0 1 2 3 4 5 6 7 8 9 》》x == 8,结束inner循环,继续迭代执行outer循环了!

  outer_loop:1

  0 1 2 3 4 5 》》x == 9,结束inner循环,继续迭代执行outer循环了!

  outer_loop:2

  0 1 2 3 4 5 6 7 8 9 》》x == 8,结束inner循环,继续迭代执行outer循环了!

  outer_loop:3

  0 1 2 3 4 》》x == 9,结束inner循环,继续迭代执行outer循环了!

  outer_loop:4

  0 1 2 3 4 5 6 7 8 9 10 》》x == 8,结束inner循环,继续迭代执行outer循环了!

  outer_loop:5

  0 》》x == 1,跳出并结束整个outer和inner循环!——》》》所有循环执行完毕!

  Process finished with exit code 0

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1156092664@qq.com 举报,一经查实,本站将立刻删除。

在线客服
分享本页
返回顶部