Java里并没有goto语句,但是标签的功能类似于goto,可以实现代码级的跳转。好吧,反正我之前是没用过这玩意,也不建议用,太复杂了。 直接上代码:
int i = 0;
outer: for (; true;) {
System.out.println("outer");
inner: for (; i < 10;i++) {
System.out.println("i=" + i);
if (i == 2) {
System.out.println("continue");
//执行continue,会执行for里的i++
continue;
}
if (i == 3) {
System.out.println("break");
i++;
//执行break,不会执行for里的i++,所以,这里需要i++
break;
}
if (i == 7) {
System.out.println("continue outer");
i++;
//continue outer后,inner循环结束,不会再i++,所以需要i++,继续执行outer的循环
continue outer;
}
if (i == 8) {
System.out.println("break outer");
//中断outer循环,同时inner也中断
break outer;
}
for(int k=0;k<5;k++)
{
if(k==3){
System.out.println("continue inner");
continue inner;
}
}
}
}
outer和inner是定义标签的名字,可随意 执行结果: outer i=0 continue inner i=1 continue inner i=2 continue i=3 break outer i=4 continue inner i=5 continue inner i=6 continue inner i=7 continue outer outer i=8 break outer