java中的"goto"--label
java中没有goto,但是goto是保留字。例如int goto;是不合法的。
但是java中有标签,仅作用在多重循环的continue和break中。
continue和break只能作用于本层循环,但是有了标签可以直接跳出多重循环。
代码举例:
public class Main {
public static void main(String[] args) {
first: // 标签与循环直接不可以加语句
for (int i = 0; i < 3; ++i) {
System.out.println("\nfirst: " + (i + 1) + " times start");
second:
for (int j = 0; j < 2; ++j) {
System.out.println("\tsecond: " + (j + 1) + " times start");
if (i == 1 && j == 1) {
System.out.println("\t----break----");
break;
}
for (int k = 0; k < 2; ++k) {
System.out.println("\t\tthird: " + (k + 1) + " times start");
if (i == 1 && j == 0 && k == 0) {
System.out.println("\t\t----continue----");
continue;
}
if (i == 2 && j == 0) {
System.out.println("\t\t----continue second----");
continue second;
}
if (i == 2 && j == 1 && k == 1) {
System.out.println("\t\t----break first----");
break first;
}
System.out.println("\t\tthird: " + (k + 1) + " times end");
}
System.out.println("\tsecond: " + (j + 1) + " times end");
}
System.out.println("first: " + (i + 1) + " times end");
}
}
}
输出:
first: 1 times start
second: 1 times start
third: 1 times start
third: 1 times end
third: 2 times start
third: 2 times end
second: 1 times end
second: 2 times start
third: 1 times start
third: 1 times end
third: 2 times start
third: 2 times end
second: 2 times end
first: 1 times end first: 2 times start
second: 1 times start
third: 1 times start
----continue----
third: 2 times start
third: 2 times end
second: 1 times end
second: 2 times start
----break----
first: 2 times end first: 3 times start
second: 1 times start
third: 1 times start
----continue second----
second: 2 times start
third: 1 times start
third: 1 times end
third: 2 times start
----break first----
java中的"goto"--label的更多相关文章
- 原来java中也有类似goto语句的标签啊--java label标签
http://blog.sina.com.cn/s/blog_6d5354cd0100xjg7.html ——————————————————————————————————————————————— ...
- Java基础(2):Java中的四个跳转语句总结goto,break,continue,return
跳转控制语句 Java中的goto是保留字,目前不能使用.虽然没有goto语句可以增强程序的安全性,但是也带来很多不便,比如说,我想在某个循环知道到某一步的时候就结束,现在就做不了这件事情.为了弥补这 ...
- Java中带标签的break,continue
首先不带标签的break,continue 就不介绍了.大家平时用的最多的也就是这样的情况了. 首先Java中没有goto,但是可以利用带标签的break, continue来实现类似的跳转. 首先来 ...
- java中多重循环和break、continue语句
一.嵌套循环 循环可以互相嵌套,以实现更加复杂的逻辑,其代码的复杂程度也会提高,对初学者而言这应该是个难点,下面我们通过一些例子说明嵌套循环的使用,读者要自己把这些代码上机练习,并理解程序运行的流程. ...
- java中如何使用break跳出多重循环
java 中已知的三种跳出多重循环的方式: System.out.println("---------java中跳出多重循环的三种方式:---------"); System.ou ...
- Java中break和continue跳出指定循环
https://www.cnblogs.com/miys/p/b7f6a463bc58785d74a8a7fccd1f1243.html 在Java中,break和continue可以跳出指定循环,在 ...
- Java中的标签语法(类似于C语言goto循环体)
Java中的标签语法(少用) 101到150的质数 此法类似于C语言中的GOTO循环 public static void main(String[] args) { int count=0; //标 ...
- java中如何实现类似goto的作法
goto虽然是java中保留的keyword,但是对于跳转这个语法对新手来说这个确实好用.为了提高程序的可靠性和可读性,Java语言目前是不支持无条件跳转的goto语句!! 幸亏java中有高仿跳转的 ...
- java 中通过label跳出双重for 循环
java 中如何跳出双重for 循环 java跳出循环是使用break语句的,break默认跳出当前循环(包括for循环.while循环),当使用双层循环时,可通过label从内层循环跳出.有关对比的 ...
随机推荐
- MVC-起始页面设置
MVC的URL是通过路由映射的,因为我们可以通过修改RouteConfig来改变应用的起始页面. public class RouteConfig { public static void Regis ...
- ubuntu - sudo in php exec
最近写防火墙的WEB版,需要在PHP中调用linux系统命令,但是防火墙有关的执行都需要管理员权限才能执行. 在ubuntu下,Apache2的运行账户默认是www-data,默认是不能通过sudo来 ...
- 深度观察:腾讯收购大众点评背景下的O2O大格局
[亿欧导读] 腾讯入股大众点评获得20%股权,详情解读:①大众点评:独立自主为底线,要钱大于要流量:②腾讯:承认原生活服务O2O失败,丰富移动支付应用场景:③美团承受压力,拉手窝窝继续苦等买家:④BA ...
- 【无聊放个模板系列】POJ2752 EXKMP
#include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> #inc ...
- 使用Code first 进行更新数据库结构(数据迁移)
CodeFirst 背景 code first起初当修改model后,要持久化至数据库中时,总要把原数据库给删除掉再创建(DropCreateDatabaseIfModelChanges),此时就会 ...
- ContentLoadingProgressBar不显示问题
ContentLoadingProgressBar需要设置style 并且在XML中布局的位置必须写在content布局的下面 <?xml version="1.0" enc ...
- The Little Redis Book
一.概念简介: Redis: Redis是一款开源的Key-Value数据库,运行在内存中,由ANSI C编写,详细的信息在Redis官网上面有,因为我自己通过google等各种渠道去学习Redis, ...
- 关于fastclick.js
Fastclick fastclick.js解决了什么问题? 自己接触WebApp开发的前期, 总感觉WebApp上的按键操作不如NativeApp的灵敏, 好像有那么一小点延迟. 后来才知道, 这是 ...
- 【HDOJ】4210 Su-domino-ku
DLX.在模板的基础上增加一个FILL属性,略修改即可. /* 4210 */ #include <iostream> #include <string> #include & ...
- 【DataStructure In Python】Python模拟栈和队列
用Python模拟栈和队列主要是利用List,当然也可以使用collection的deque.以下内容为栈: #! /usr/bin/env python # DataStructure Stack ...