JAVA中的break[标签]continue[标签]用法

注意:JAVA中的标签必须放在循环之前,且中间不能有其他语句。例如:tag:for或while或do--while;

 

1.使用break退出一层循环(与C/C++中的break用法一样)

 

 1 public static void main(String args[])
 2 {
 3 int i=0;
 4 while(i<100)
 5 { 
 6 if(i==10) break;
 7 System.out.println("i="+i);
 8 i++;
 9 }
10 }

 


Attention:当break用在一组嵌套循环时,将仅跳出最里面的循环。

2.使用break退出多层循环(与C/C++中的goto用法类似,跳过与标签最近的即最外层循环)

 

 1 public static void main(String args[])
 2 {
 3 outer:
 4 for(int i=0; i<3; i++)
 5 {
 6 System.out.print("Pass "+i+":");
 7 for(int j=0; j<100; j++)
 8 {
 9 if(j==10)
10 break outer;
11 System.out.print(j+" ");
12 }
13 System.out.println("This will not print");
14 }
15 System.out.println("loops complete.");
16 }

 


程序的输出:
Pass 0: 0 1 2 3 4 5 6 7 8 9 loops complete.

continue的使用
1.在一层循环中的使用(与C/C++中的用法一样)

 

 1 public static void main(String args[])
 2 {
 3 for(int i=0; i<10; i++)
 4 {
 5 System.out.print(i+" ");
 6 if(i%2==0)
 7 continue;
 8 System.out.println("");
 9 }
10 }

 


输出结果:
0 1
2 3
4 5
6 7
8 9

2.在多层循环中使用(提前结束的是标签最近的最外层循环体的一次循环,提前进入最外层循环的下次循环)

 

 1 public static void main(String args[])
 2 {
 3 outer:
 4 for(int i=0; i<10; i++)
 5 
 6 for(int k=0;k<10;k++)
 7 
 8 {
 9 for(int j=0; j<10; j++)
10 {
11 if(j>i)
12 {
13 System.out.println();
14 continue outer;
15 }
16 System.out.print(" "+(i*j));
17 }}
18 
19 System.out.println();
20 }

 


 

0
0 1
0 2 4
0 3 6 9
0 4 8 12 16
0 5 10 15 20 25
0 6 12 18 24 30 36
0 7 14 21 28 35 42 49
0 8 16 24 32 40 48 56 64
0 9 18 27 36 45 54 63 72 81

posted @ 2012-05-31 12:02  cseriscser  阅读(10321)  评论(1编辑  收藏  举报