一作用和区别
break 的作用是跳出当前循环块 (forwhiledo while) 或程序块 (switch) 在循环块中的作用是跳出当前正在循环的循环体在程序块中的作用是中断和下一个 case 条件的比较
continue 用于结束循环体中其后语句的执行, 并跳回循环程序块的开头执行下一次循环, 而不是立刻循环体
二其他用途
break 和 continue 可以配合语句标签使用
这个都很简单, 下面给个综合实例, 看看就明白 了:
- /**
- * Created by IntelliJ IDEA.
- * User: leizhimin
- * Date: 2007-11-29
- * Time: 15:47:20
- */
- public class Test {
- public static void main(String args[]) {
- Test test = new Test ();
- test.testBreak1();
- test.testContinue1();
- test.testBreak2();
- test.testContinue2();
- }
- /**
- * 测试 continue
- * continue 用来结束本次循环
- */
- public void testContinue1() {
- System.out.println("-------- 测试 continue-------");
- for (int i = 1; i <= 5; i++) {
- if (i == 3) continue;
- System.out.println("i=" + i);
- }
- }
- /**
- * break 用来结束整个循环体
- */
- public void testBreak1() {
- System.out.println("-------- 测试 break1-------");
- for (int i = 1; i <= 5; i++) {
- if (i == 3) break;
- System.out.println("i=" + i);
- }
- }
- /**
- * 测试带标签的 break 语句
- * 标签只能写在循环体之前, 顺便学习一下 java 中语句标签的定义和使用
- */
- public void testBreak2() {
- System.out.println("-------- 测试 break2-------");
- int i = 1;
- int k = 4;
- lable1:
- for (; i <= 5; i++, k--) {
- if (k == 0) break lable1;
- System.out.println("i=" + i + "; k=" + k);
- }
- }
- public void testContinue2() {
- System.out.println("-------- 测试 continue2-------");
- lable1:
- for (int i = 1; i < 10; i++) {
- lable2:
- System.out.println("i=" + i);
- for (int j = 0; j < 10; j++) {
- if (j == 9) continue lable1;
- }
- }
- }
- }
运行结果:
-------- 测试 break1-------
i=1
i=2
-------- 测试 continue-------
- i=1
- i=2
- i=4
- i=5
-------- 测试 break2-------
- i=1 ; k=4
- i=2 ; k=3
- i=3 ; k=2
- i=4 ; k=1
-------- 测试 continue2-------
- i=1
- i=2
- i=3
- i=4
- i=5
- i=6
- i=7
- i=8
- i=9
- Process finished with exit code 0
来源: http://www.phperz.com/article/18/0225/359422.html