break and continue

   在任何循环语句的主体部分,可以用break 和continue 控制循环的流程。其中,break 用于退出循环,不执行循环中剩余的语句。而continue 则停止执行当前的循环,然后退回循环起始处,开始新的循环。下面看一个例子

  • 1-1 break and continue的例子

//: control/BreakAndContinue.java// Demonstrates break and continue keywords.import static net.mindview.util.Range.*;public class BreakAndContinue {  public static void main(String[] args) {    for(int i = 0; i < 100; i++) {      if(i == 74) break; // Out of for loop      if(i % 9 != 0) continue; // Next iteration      System.out.print(i + " ");    }    System.out.println();    // Using foreach:    for(int i : range(100)) {      if(i == 74) break; // Out of for loop      if(i % 9 != 0) continue; // Next iteration      System.out.print(i + " ");    }    System.out.println();    int i = 0;    // An "infinite loop":    while(true) {      i++;      int j = i * 27;      if(j == 1269) break; // Out of loop      if(i % 10 != 0) continue; // Top of loop      System.out.print(i + " ");    }  }}

程序运行的结果如下:

   在这个for 循环中,i 的值永远不会到达100。因为一旦i 到达74,break 语句就会中断循环。通常,只有在不知道中断条件何时满足时,才需象这样使用break。只要i 不能被9 整除,continue 语句会使程序流程返回循环的最开头执行(所以使i 值递增)。如果能够整除,则将值显示出来。

第二部分揭示了一个“无限循环”的情况。然而,循环内部有一个break 语句,可中止循环。除此以外,大家还会看到continue 移回循环顶部,同时不完成剩余的内容(所以只有在i 值能被9 整除时才打印出值)。