Java中的break和continue关键字使用总结

一、作用和区别 
break的作用是跳出当前循环块(for、while、do 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 
参考:Java中标签的使用 http://blog.csdn.net/whiteotiger/article/details/6522261

下面是对这个用法的总结:

(1) 简单的一个continue会退回最内层循环的开头(顶部),并继续执行。

(2) 带有标签的continue会到达标签的位置,并重新进入紧接在那个标签后面的循环

(3) break会中断当前循环,并移离当前标签的末尾。

(4) 带标签的break会中断当前循环,并移离由那个标签指示的循环的末尾。


版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-08-14 15:08  xiexie2015  阅读(579)  评论(0编辑  收藏  举报