Break和Continue使用语法及区别

来源:互联网 发布:九仙图 仙羽升阶数据 编辑:程序博客网 时间:2024/05/20 02:27

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

在JAVA中,标签起作用的唯一地方刚好是在迭代语句之前。"刚好之前"的意思表明,在标签和迭代之间置入任何语句都不好。而在迭代之前设置标签的唯一理由是:我们希望在其中嵌套另一个迭代或者一个开关。这是由于break和continue关键词通常只是中断当前循环,但若随同标签一起使用,它们就会中断循环,知道标签所在的地方。


下面是示例代码:

/* * 文件名:BreakAndContinue.java * 版权:Copyright by myoursky * 描述:Break和Continue使用语法及区别 * 修改人:gaoxiaohan * 修改时间:2014-10-13 * 跟踪单号: * 修改单号: * 修改内容: */package com.myoursky.j2se;public class BreakAndContinue {public static void main(String[] args) {breakMethod();continueMethod();breakLabel1();breakLabel2();continueLabel1();continueLabel2();}/** * Description: break语法<br> * @see */private static void breakMethod(){System.out.println("===break语句输出结果===");for(int i=0;i<10;i++){if(i==3) break;System.out.print(i+",");}System.out.print("\n");}/** * Description:Continue语法 <br>  * @see */private static void continueMethod(){System.out.println("===continue语句输出结果===");for(int i=0;i<10;i++){if(i==3) continue;System.out.print(i+",");}System.out.print("\n");}/** * Description: break在双重循环中的使用,跳出当前循环,当前循环不再继续执行<br> * @see */private static void breakLabel1(){System.out.println("===breakFor语句输出结果===");for(int i=0;i<3;i++){for(int j=0;j<3;j++){if(j==1) break;System.out.print(i+":"+j+",");}}System.out.print("\n");}/** * Description: break label在双重循环中的使用,跳转至label标签处,循环不再继续执行。<br> * @see */private static void breakLabel2(){System.out.println("===breakLabel语句输出结果===");label:for(int i=0;i<3;i++){for(int j=0;j<3;j++){if(j==1) break label;System.out.print(i+":"+j+",");}}System.out.print("\n");}/** * Description: break在双重循环中的使用,跳出当前循环,当前循环继续执行<br> * @see */private static void continueLabel1(){System.out.println("===continueFor语句输出结果===");for(int i=0;i<3;i++){for(int j=0;j<3;j++){if(j==1) continue;System.out.print(i+":"+j+",");}}System.out.print("\n");}/** * Description: break label在双重循环中的使用,跳转至label标签处,循环继续执行。<br> * @see */private static void continueLabel2(){System.out.println("===continueLabel语句输出结果===");label1:for(int i=0;i<3;i++){for(int j=0;j<3;j++){if(j==1) continue label1;System.out.print(i+":"+j+",");}}System.out.print("\n");}}


0 0
原创粉丝点击