Break和Continue

1.单循环

break语句:结束符合条件的整体循环

continue语句:结束符合条件的一次循环

2.标签

当存在多重循环时,可以使用标签使指定循环停止, 标签只能写在循环体之前

循环体1{循环体2{循环体3....}}}

在循环体前加上标签名称:,例如循环体1{label1:循环体2{循环体3....}}},在循环终止条件后加入continue/break label1;

3.实例

 1 public class continueandbreak {
 2         //continue用来结束本次循环 
 3         public void testContinue1() {
 4             System.out.println("--------测试continue1-------");
 5             int a[]=new int[5];
 6             for (int i = 0; i <a.length; i++) {
 7                 a[i]=i;  
 8                 if (i == 3) continue;                  //当i=3时将不执行system.out语句,直接进行i=4及其以后的循环语句。
 9                 System.out.println("a["+i+"]="+a[i]);
10             }
11         }

 1 //break用来结束整个循环
 2         public void testBreak1() {
 3             System.out.println("--------测试break1-------");
 4             int a[]=new int[7];
 5             for (int i = 0; i <a.length; i++) {
 6                 a[i]=i;
 7                 if (i == 3) break;       //当i=3时将直接跳出循环,i=4,5,6...不再执行。
 8                 System.out.println("a["+i+"]="+a[i]);
 9             }
10         }

 1   //当break用在多重循环中时,跳出与标签最近的所有循环。
 2            public void testBreak2() {
 3             System.out.println("--------测试break2-------");
 4 
 5             //设置标签
 6             label:                                //当i=0,j=10时就已经跳出i的整体循环,不再执行该循环体的内容。                           
 7                 for (int i = 0; i < 3; i++) {            
 8                     System.out.print("Pass " + i + ":");     
 9 
10                     label1:                       //当使用label1标签时,将停止j的整体循环,提前进入i的下一次循环。
11                     for (int j = 0; j < 100; j++) {                
12                         if (j == 10)                    
13                             break label;                 //使用标签        
14                         System.out.print(j + " ");                    
15                         }                 
16                      System.out.println("This will not print");                 
17                      }
18         System.out.println("loops complete.");
19            }

label标签:

label1标签:


        

 1  //当continue用在多重循环中时, 提前结束的是标签最近的循环体的一次循环,提前进入该循环的下次循环。
 2         public void testContinue2() {
 3             System.out.println("--------测试continue2-------");          
 4 
 5             label:
 6                 for (int i = 0; i < 3; i++) {    
 7                     System.out.println();
 8                     System.out.print("Pass " + i + ":");    
 9                     for (int j = 0; j < 100; j++) {                
10                         if (j == 10)                               //当i=10时,循环将跳出i=0的阶段,直接进入i=1的阶段
11                             continue label;                    
12                         System.out.print(j + " ");                    
13                         }                     
14                      System.out.println("This will not print");                 
15                      }
16         System.out.println("loops complete.");
17            }


             

原文地址:https://www.cnblogs.com/jfl-xx/p/4678161.html