java 中跳转语句使用break、continue和标签,各自或组合完成相应的功能。

今天做题时遇到关于标签命名规范,顺便将跳转语句语法都看了一遍,很有收获。

在《Java编程思想》一书中,作者详细阐述,现将案例代码写在下面:

public class LabeledFor {

    public static void main(String[] args) {
int i=0;
outer:
for(;true;){
inner:
for(;i<10;i++){
System.out.println("i="+i);
if(i==2){
System.out.println("continue");
continue;
}
if(i==3){
System.out.println("break");
i++; //otherwise i never gets incremented
break;
}
if(i==7){
System.out.println("continue outer");
i++; //otherwise i never gets incremented
continue outer;
}
if(i==8){
System.out.println("break outer");
break outer;
}
for(int k=0;k<5;k++){
if(k==3){
System.out.println("continue inner");
continue inner;
}
}
}
} } }

运行结果见下图:

i=0
continue inner
i=1
continue inner
i=2
continue
i=3
break
i=4
continue inner
i=5
continue inner
i=6
continue inner
i=7
continue outer
i=8
break outer

  自认为比较重要的一点是,break中断for循环,而且是在抵达for循环的末尾之前,也就是说,递增表达式将不会执行。continue确不会跳过递增语句。

  同样的,这个例子中,当i==7的情况下,continue outer语句会跳到循环顶部,而且也会跳过递增。

  如果没有break outer,就没有办法从内部循环里跳出外部循环。这是由于break本身只能中断最内层的循环(continue同样如此)。

  如果想中断同时退出,简单地用一个return即可。

最新文章

  1. 升级到macOS 10.12 mysqlb报错ERROR 1045 (28000): Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: NO)
  2. 大规模web 服务开发技术
  3. Spark源码学习1.6——Executor.scala
  4. Java 多态——与C++的比较
  5. cocos2d-x图层以及显示对象的基本使用
  6. HITAG 2 125kHz RFID IC Read-Write 256 bits
  7. UVa 11729 Commando War 突击战
  8. 安装openshift客户端工具 rhc
  9. _int、NSInteger、NSUInteger、NSNumber的区别和联系
  10. eclipse+tomcat+httpServlet初学
  11. python自动发邮件总结及实例说明
  12. 01.PHP5.x编译详解
  13. SLAM入门之视觉里程计(4):基础矩阵的估计
  14. Android破解学习之路(七)—— 乐秀视频编辑 内购破解 专业版 价值25元的破解
  15. vue项目在移动端(手机)调试
  16. spring 循环依赖问题
  17. 关于string指针
  18. PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
  19. 简单了解Tomcat与OSGi的类加载器架构
  20. 基于SmartThreadPool线程池技术实现多任务批量处理

热门文章

  1. Android-ContentProvider简单的增删改查
  2. error: field &#39;b&#39; has imcomplete type
  3. First App on Phonegap | Cordova
  4. docker 进入容器
  5. 虚拟化 - Docker
  6. windows Win7如何设置多用户同时远程登录
  7. select2 模糊查询远程数据
  8. 使用adb工具调试出现error:device offline
  9. 爬虫开发9.scrapy框架之递归解析和post请求
  10. adb命令之pm