1 break有三种用法:
(1)在switch 语句中,用来终止一个语句序列。
(2)作为‘先进’的goto语句来使用。
(3)用来被退出循环。
以下针对break能用来退出循环进行一些小的总结:
第一,在单层循环中,它能退出循环,不再执行后面的循环语句。
for(int i=0; i<100; i++) {
if(i == 10) break;
}
结果:0123456789
第二,在两层或以上的循环中,仅仅能够退出最里面内部的循环,不会影响外部循环。
for(int i=0; i<3; i++) {
System.out.print(i+":");
for(int j=0; j<100; j++) {
if(j == 10) break;
}
}
结果:0:0123456789 1:0123456789 2:0123456789
注意:一个循环中可以有一个以上break 语句。但要小心,太多break 语句会破坏你代码结构。
2 continue 的用法:跳出本次循环,继续下一次循环
for(int i=0; i<10; i++) {
System.out.print(i + " ");
if (i%2 == 0)
continue;
System.out.println("");
}
解析:通过continue语句使得变量i是偶数时,循环继续执行不换新行
结果:0 1 2 3 4 5 6 7 8 9
3 return 的用法: 结束return下面程序的运行,使程序控制返回到调用它的方法.
public static void main(String args[]) {
boolean t = true;
System.out.println("Before the return.");
if(t) return;
System.out.println("This won't execute.");
}
结果:Before the return. 正如你看到一样,最后println( ) 语句没有被执行。一旦return语句被执行,程序控制传递到它调用者。
最后一点:在上面程序中,if(t)语句是必要。没有它,Java 编译器将标记“执行不到代码”(unreachable code )错误,因为编译器
知道最后println ()语句将永远不会被执行。为阻止这个错误,为这个例子能够执行,在这里使用if语句来“蒙骗”编译器。
4 break 用法的拓展:
通过使用一个标签,可以使得用break语句时,退出两层或两层以上的循环的作用,当然,首先要对这个标签进行定义,并且要将break语句块包围在里面。如果没有包围的话,达不到相应的效果
outer: for(int i=0; i<3; i++) {
System.out.print("Pass " + i + ": ");
for(int j=0; j<100; j++) {
if(j == 10) break outer; // exit both loops
System.out.print(j + " ");
}
System.out.println("This will not print");
}
解析:这里通过使用outer标签,使得当j=10时退出两层循环。
结果: Pass 0: 0 1 2 3 4 5 6 7 8 9
(1)在switch 语句中,用来终止一个语句序列。
(2)作为‘先进’的goto语句来使用。
(3)用来被退出循环。
以下针对break能用来退出循环进行一些小的总结:
第一,在单层循环中,它能退出循环,不再执行后面的循环语句。
for(int i=0; i<100; i++) {
if(i == 10) break;
}
结果:0123456789
第二,在两层或以上的循环中,仅仅能够退出最里面内部的循环,不会影响外部循环。
for(int i=0; i<3; i++) {
System.out.print(i+":");
for(int j=0; j<100; j++) {
if(j == 10) break;
}
}
结果:0:0123456789 1:0123456789 2:0123456789
注意:一个循环中可以有一个以上break 语句。但要小心,太多break 语句会破坏你代码结构。
2 continue 的用法:跳出本次循环,继续下一次循环
for(int i=0; i<10; i++) {
System.out.print(i + " ");
if (i%2 == 0)
continue;
System.out.println("");
}
解析:通过continue语句使得变量i是偶数时,循环继续执行不换新行
结果:0 1 2 3 4 5 6 7 8 9
3 return 的用法: 结束return下面程序的运行,使程序控制返回到调用它的方法.
public static void main(String args[]) {
boolean t = true;
System.out.println("Before the return.");
if(t) return;
System.out.println("This won't execute.");
}
结果:Before the return. 正如你看到一样,最后println( ) 语句没有被执行。一旦return语句被执行,程序控制传递到它调用者。
最后一点:在上面程序中,if(t)语句是必要。没有它,Java 编译器将标记“执行不到代码”(unreachable code )错误,因为编译器
知道最后println ()语句将永远不会被执行。为阻止这个错误,为这个例子能够执行,在这里使用if语句来“蒙骗”编译器。
4 break 用法的拓展:
通过使用一个标签,可以使得用break语句时,退出两层或两层以上的循环的作用,当然,首先要对这个标签进行定义,并且要将break语句块包围在里面。如果没有包围的话,达不到相应的效果
outer: for(int i=0; i<3; i++) {
System.out.print("Pass " + i + ": ");
for(int j=0; j<100; j++) {
if(j == 10) break outer; // exit both loops
System.out.print(j + " ");
}
System.out.println("This will not print");
}
解析:这里通过使用outer标签,使得当j=10时退出两层循环。
结果: Pass 0: 0 1 2 3 4 5 6 7 8 9