Java带标签的break 和带标签的continue
最开始没有学习java 学习的是C语言然后工作开始用java,但当时并没有仔细看过java的书籍,也是大致一翻就看跟C语言很像,了解了基本语法就没有深究了,今天看书开始发现之前没有了解过的语法
带标签的break ,带标签的continue:
我最开始了解的break 是switch中的终止,for while do..while这些循环中的终止,我曾经写过循环的3层嵌套,当第三层中需要终止嵌套的所有循环时,break就要一层一层的退出循环,自己写条件判断,恶心了半天还觉得这个代码太多余了
现在才发现java中有跳出所有循环的带标签的break; 这个带标签的break是goto这个语法来的,不要问goto是什么,其实goto也是一个用来循环的语句,因为goto可以自由设置跳跃循环的点,导致程序的bug和维护会有很多的问题,结果被诟病没人在
项目中使用了,但它有个优点就是可以任意跳出循环跳到标签的位置,带标签的break和带标签的continue就这么应运而生。
接下来看看代码:
int i =0;
int j = 0;
label:while(true){
//我是第一层循环
while(true){
//我是第二层循环
if(j*i == 81)
break label; // continue label
j++;
}
i++;
}
label: 就是标签 要终止的位置
break label :终止结束到标签 结束语句
continue label: 终止本次循环 跳到标签位置进行接下来的循环
是不是很简单,就是很简单的理解,作为学习记录~
Java带标签的break 和带标签的continue的更多相关文章
- 带标签的 break 和 continue (Java)
2002年12月发于 CCW-I2006年9月搬至 CSDN,略作修改 Java 中有 goto 关键字,但这个关键字没有任何作用,换句话说,我们不能使用 goto 来进行跳转到某行.实际上,结构化程 ...
- Java中带标签的break,continue
首先不带标签的break,continue 就不介绍了.大家平时用的最多的也就是这样的情况了. 首先Java中没有goto,但是可以利用带标签的break, continue来实现类似的跳转. 首先来 ...
- [原创]java WEB学习笔记42:带标签体的自定义标签,带父标签的自定义标签,el中自定义函数,自定义标签的小结
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- continue,break以及加上标签的使用(goto思路)
代码例子在java编程思想70-73页.这里只是想做做总结 java中需要用到标签的唯一理由就是因为由循环嵌套的存在,而且想从多层嵌套循环中break或者continue. 因此,标签只能放在循环前面 ...
- java——int、args[]传参、标签、数字塔?、一个输入格式
1.当int型整数超出自己范围时,会从它的上界重新开始. public class exp { public static void main(String[] args) { int i = 214 ...
- 最全最新java面试题系列全家桶(带答案)
最全最新java面试题系列全家桶(带答案) 置顶 2019年04月06日 22:40:28 青春季风暴 阅读数 14082 文章标签: java面试题技术栈 更多 分类专栏: 面试 版权声明:本文 ...
- Java Web开发技术教程入门-自定义标签
回顾: 昨天了解了JSP开发的两种模式Model1和Model2模式.Model1采用JSP+JavaBean技术开发Web应用,它比较适合小规模应用的开发,效率较高,易于实现.但由于在Model1中 ...
- java进行文件上传,带进度条
网上看到别人发过的一个java上传的代码,自己写了个完整的,附带源码 项目环境:jkd7.tomcat7. jar包:commons-fileupload-1.2.1.jar.commons-io-1 ...
- Java IO学习笔记一:为什么带Buffer的比不带Buffer的快
作者:Grey 原文地址:Java IO学习笔记一:为什么带Buffer的比不带Buffer的快 Java中为什么BufferedReader,BufferedWriter要比FileReader 和 ...
随机推荐
- 一个.java文件定义多个类的情况
一个.java文件中定义多个类: 注意一下几点: (1) public权限类只能有一个(也可以一个都没有,但最多只有一个): (2)这个.java文件名只能是public 权限的类的类名: (3)倘若 ...
- uva 11491:Erasing and Winning(贪心)
题意:给一个长n(n<10^5)位的数,删除d位,求删除后最大的数.(原数无前导0) 思路:从前往后扫,如果a[i] > a[i-1],则删除a[i-1].我暴力的用链表实现了…… #in ...
- poj 1061(线性同余)
青蛙的约会 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 104278 Accepted: 20356 Descript ...
- LeetCode OJ-- Pow(x, n) **@
https://oj.leetcode.com/problems/powx-n/ 二分法 class Solution { public: double pow(double x, int n) { ...
- 【转】【Stackoverflow好问题】去掉烦人的“!=null"(判空语句)
[Stackoverflow好问题]去掉烦人的“!=null"(判空语句) 问题 为了避免空指针调用,我们经常会看到这样的语句 ...if (someobject != null) { ...
- .Net 多线程小结
1.简述 一般一个程序一个进程,代码是存在进程中的,进程本身不执行代码, 执行代码的是线程. 一般一个进程里就一个线程.(一个商店就一个老板娘.) 进程就是在内存中开辟了一个空间.代码,图片..等就 ...
- 清理Xcode的技巧和方法
移除对旧设备的支持 影响:可重新生成:再连接旧设备调试时,会重新自动生成.我移除了4.3.2, 5.0, 5.1等版本的设备支持. 路径:~/Library/Developer/Xcode/iOS D ...
- 别名alias——快捷方式
有时候在 linux 或者 windows 上面需要对相关的命令进行快捷处理,这时候可以用到别名—— alias : linux别名设置假设我们需要设置一个 dockers 命令,用来替代 doc ...
- 关于<textarea>的内容中换行的表示方法
<textarea>sdfsdfsffsd fer</textarea>
- rsync一些常用的命令
渗透测试的时候会遇到RSYNC 匿名访问 在对一些大型互联网进行测试的时候经常会遇到rsync. 什么是Rsync Rsync(remote synchronize)是一个远程数据同步工具,可通过LA ...