Java中的break Label 和continue Label

1:break
  break语句提供了一种方便的跳出循环的方法,一般只退出一重循环。

boolean test=true;int i=0;while(test){i++;if(i>=10)break;}

  执行这段程序时,尽管while条件表达式始终为真,全循环只运行10次。

 2:标号label
  标号提供了一种简单的break语句所不能实现的控制循环的方法,当在循环语句中碰到break时,不管其它控制变量,都会终止。但是,当你嵌套在几层循环中想退出循环时又怎么办呢?break只退出一重循环,但你可以用标号label标出你想退出哪一个语句。规定标号label必需放在循环之前(意味着循环必需紧跟着标号)

例子一:

char a;System.out.println("请输入一个字母");outer: //System.out.println("请输入一个字母");// 如果在这个地方打印语句的话,编译时就会在下面蓝色语句的地方报The label outer is missing,因为这样会造成标号没有放在循环之前for (int i = 0; i < 10; i++) {for (int j = 0; j < 10; j++) {a = (char) System.in.read();if (a == 'b')break outer;if (a == 'c')continue outer;}}

  在这个例子中,循环从键盘接受100个输入字符,输入“b”字符时,break outer语句会结束两重循环,注重continue outer语句,它告诉计算机退出现在的循环并继续执行outer循环。

在Java中可以使用 break/continue 语句来控制多重嵌套循环的跳转。
例子二:

label1: for (int i = 0; i < 10; i++) {System.out.println("i = " + i);for (int x = 0; x < 10; x++) {System.out.println("x = " + x);continue label1;}}

在这个例子中,我们使用continue label1中断当前循环,继续上层循环的执行。而如果使用break label1的话,则跳出所有label1后面的嵌套循环。类似的功能我们在C#中只能用goto进行,Java虽然保留了goto关键词,却不允许使用(goto为保留字)。需要注意的是Label和下面的循环语句间不能有其他代码。

for (int k = 0; k < 5; k++) {ok: {int i = 0;while (i++ < 8){for (int j = 0; j < 10; j++) {System.out.println("i=" + i + ",j=" + j);if (j == 1)break ok;}}}}

从设计角度来说是用Label、goto都不是好主意。

转载于:https://blog.51cto.com/huamm/1265721

Java中的break Label 和continue Label相关推荐

  1. java停止循环label_Java中的break Label 和continue Label 例子(跳出多重循环)(转)...

    Java中的break Label 和continue Label 例子(跳出多重循环)(转) (2011-03-14 16:20:32) 标签: it 1:break break语句提供了一种方便的 ...

  2. JAVA中的break[标签]continue[标签]用法

    原文:JAVA中的break[标签]continue[标签]用法 注意:JAVA中的标签必须放在循环之前,且中间不能有其他语句.例如:tag:for或while或do--while; 1.使用brea ...

  3. Java中的break和continue关键字使用总结

    java中的break和continue关键字使用总结 一.作用和区别 break的作用是跳出当前循环块(for.while.do while)或程序块(switch).在循环块中的作用是跳出当前正在 ...

  4. JAVA中利用break加标签的方式跳出双重for循环

    JAVA中利用break加标签的方式跳出双重for循环 一般情况下,使用break只能跳出当前层的for循环,但是加了标签的话,就可以跳出多重循环. public class TestBreak {@ ...

  5. java中的break与continue用法

    一.break break 的作用为跳出循环,执行循环外面的操作 (1)简单break public class Main {public static void main(String[] args ...

  6. java中for break的用法_java break语句的使用方法

    在switch语中,break语句用来终止switch语句的执行.使程序 switch语句后的第一个语句 开始执行. 在Java中,可以为每个代码块加一个括号,一个代码块通常 用大括号{}括起来的一段 ...

  7. break stop java_在Java中使用break退出循环是不好的做法吗?

    小编典典 好主啊 有时,可能会在满足整体要求的循环中发生某些事情,而不满足逻辑循环条件.在这种情况下,break用于阻止您毫无意义地循环. 例 String item; for(int x = 0; ...

  8. java如何停止函数循环_在Java中使用break来退出循环是不好的做法吗?

    好主不. 有时在满足总体要求的循环中可能会出现某些情况,而不满足逻辑循环条件. 在这种情况下,使用break ,来阻止你毫无意义地在循环中循环. 例 String item; for(int x = ...

  9. java中break什么意思_Java中break的第三种用法说明

    在Java中,break语句有三种用法,第一种是用于终止switch语句中的语句序列,第二种是用于退出循环,然而第三种是用作goto语句的"文明"形式! 我们知道,goto语句会破 ...

  10. 嵌套循环中的break和continue使用规则

    嵌套循环中的break和continue使用规则 一.嵌套循环中的break 二.嵌套循环中的continue 一.嵌套循环中的break 当break用在内部循环中,遇到break的时候,会跳出内部 ...

最新文章

  1. mysql半主从_转mysql半主从同步
  2. (Alan Murta)编制的多边形集合运算软件包(general polygon clipping library,简称GPC)
  3. 解决ASP.Net第一次访问慢的处理 IIS 7.5
  4. lucene学习笔记_学习Lucene
  5. HuggingFace又出炼丹神器!稀疏矩阵运算进入平民化时代!
  6. 3 万字 51 张图教你 CPU、内存、操作系统硬核知识!
  7. 1120 Friend Numbers
  8. Coregistration: Simultaneous Alignment and Modeling of Articulated 3D Shape
  9. Flutter之Redux框架入门
  10. solidworks图纸模板添加_如何建立符合国标的SolidWorks工程图模板
  11. C++ Toolkit zz
  12. OSI七层协议模型与记忆口诀
  13. 树莓派环境处理_树莓派安装raspbian并配置开发环境
  14. noip模拟测试 主仆见证了 Hobo 的离别
  15. 浅读C Primer Plus——C语起源
  16. 贝壳CVR转化率预估模型实践
  17. M1 Mac 安装iPad、iPhone App
  18. 【PDF下载】大数据峰会之MaxCompute大数据语言的新发展
  19. 什么是class-agnostic,class-agnostic是什么意思
  20. 动态规划算法问题分析_背包问题_求相隔数据之间最大和_算法理解

热门文章

  1. 1854: [Scoi2010]游戏
  2. Hadoop1.0之集群搭建
  3. c++中vector的学习
  4. BLOB:大数据,大对象,在数据库中用来存储超长文本的数据,例如图片等
  5. 第四次作业-测试作业
  6. Linux(12.1-12.6)学习笔记
  7. asp.net页面的生存周期
  8. python爬虫:bs4搜索文档树
  9. git升级到指定版本
  10. Xcode 快速开发 代码块