break和continue关键字使用总结

来源:互联网 发布:复制电梯卡软件 编辑:程序博客网 时间:2024/05/18 20:08

一、作用和区别

 

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 

 

0 0