continue实验
1 public class test { 2 static int i =0; 3 public static void main(String[] args) { 4 lable1: 5 while(true){ 6 7 if(i == 6){ 8 System.out.println("从lable2下的循环跳到了lable1"); 9 break; 10 // continue lable2; 11 } 12 13 lable2: 14 while(true){ 15 if(i == 5){ 16 System.out.println("将从lable2将跳到lable1"); 17 i++; 18 continue lable1; 19 } 20 i++; 21 } //labe2 22 }//lable1 23 }//main 24 }//类
上边代码有两个while循环,并且是嵌套的;笔者在外层while循环设置Lbale1,在内层while设置Lable2标签
当静态变量 i =5的时候,执行
continue lable1;
就会从内层循环跳转到外层循环,并且从头开始执行外层循环
continue使用注意事项:
-
循环内部跳转
-
方向向上
错误演示:非内部跳转
break实验
和cotinue一样,但continue是跳转到标签处后继续执行,而break会停止在标签处不动
1 lable1: 2 while(true){ 3 System.out.println(i); 4 i++; 5 6 if(i==3){ 7 System.out.println("i = 10,break到lable1"); 8 break lable1; 9 } 10 }
结果:
1 0 2 1 3 2 4 i = 10,break到lable1
结果发现,当执行到 i==3 后,执行
break lable1;
会break 到lable1处的while()。发现程序不再执行
总结
- continue和break的相同点,
- 都能实现goto功能(continue lable;break lable)
- 内部跳转(continue/break语句 在循环的内部)
- 向上跳转continue/break 后接的标签必须在continue/break语句的上边
特殊情况:有循环嵌套依然遵循内部跳转和向上跳转
2. ontinue和break的不同点
·continue是跳转到标签处继续执行
·break跳转到标签处停止运行