zoukankan      html  css  js  c++  java
  • break语句和continue语句

     在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。

            //break :结束整个循环    
            int count=0;
            while(true){
                int i =(int)Math.round(100*Math.random());//得到一个0-100的随机整数            
                System.out.print(i+" ");
                count++; //循环一次计数器加1
                if(i==88){  //当i等于88时,退出循环
                    System.out.println();
                    System.out.println("①.循环到第【 "+count+" 】次找到"+i);
                    System.out.println("②.break结束整个循环");
                    break;
                }
                System.out.print("空  ");
            }
            System.out.println("③.这是循环外面");

          continue 语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

    注意事项

          1. continue用在while,do-while中,continue 语句立刻跳到循环首部,越过了当前循环的其余部分。

          2. continue用在for循环中,跳到for循环的迭代因子部分。

     

    //        continue:结束本次循环        
    //        continue语句:把100~150之间不能被3整除的数输出,并且每行输出5个
            int sum =0;
            for(int i =100;i<=150;i++){
                if(i%3==0){
    //                System.out.print("跳    出"+"	");
                    continue;   //跳出本次循环,继续下次循环
                }
                sum++;
                System.out.print(i+"继续	");
                if(sum%5==0){    //每行输出5个
                    System.out.println();
                }
            }

     

    遇到被3整除时是这样的:

     带标签的break和continue

     

    goto关键字很早就在程序设计语言中出现。尽管goto仍是Java的一个保留字,但并未在Java语言中得到正式使用;Java没有goto语句。然而,在break和continue这两个关键字的身上,我们仍然能看出一些goto的影子---带标签的break和continue。

     

          “标签”是指后面跟一个冒号的标识符,例如:“label:”。对Java来说唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,它们就会中断到存在标签的地方。

     

          在 “goto有害”论中,最有问题的就是标签,而非goto, 随着标签在一个程序里数量的增多,产生错误的机会也越来越多。 但Java标签不会造成这方面的问题,因为它们的活动场所已被限死,不可通过特别的方式到处传递程序的控制权。由此也引出了一个有趣的问题:通过限制语句的能力,反而能使一项语言特性更加有用。

     

    //        带标签break和continue:控制嵌套循环跳转(打印101-150之间所有的质数)
            here:for(int i=101;i<=150;i++){
                    for(int j=2;j<i/2;j++){
                        if(i%j==0){
                            continue here;//跳出到here标签处继续循环(内循环跳到外循环)
                        }
                    }
                System.out.print(i+" ");
            }

     

     

     

  • 相关阅读:
    【原创】MessageBox设置默认按钮
    探秘Win7计算器,这货不只是计算器
    android fill_parent和match_parent 的区别
    陈晓旭出家申明
    vi语法高亮
    EXTJS 常用控件的使用
    android平台下使用点九PNG技术
    【Android】附加Android源代码Androidandroid_gingerbread_javasrc
    ComboBox控件隐藏fieldLabel不能隐藏问题解决
    ScriptLoader.loadScripts cannot be called while the ScriptLoader is already loading scripts
  • 原文地址:https://www.cnblogs.com/huaxiansheng/p/14718317.html
Copyright © 2011-2022 走看看