<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    302班

    java突擊隊(duì)
    posts - 151, comments - 74, trackbacks - 0, articles - 14
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    在一具循環(huán)體中,如果用break返回, 則不管其后面是否有滿足for中條件的情況,都不做for中的循環(huán)體,即不會(huì)做;
    如果用continue返回,如果條件滿足執(zhí)行continue, 跳出下面語(yǔ)句的執(zhí)行,而返回到for 語(yǔ)句的開頭,再次判斷for中的條件,從而根據(jù)條件執(zhí)行其中的循環(huán)體內(nèi)容。

    簡(jiǎn)單地說(shuō),比如這樣一個(gè)程序:
    for(...) {
    ...
    continue/break;
    ...
    }
    System.out.prinln("a");

    continue表示立即去執(zhí)行“for(...)”這行代碼,break表示立即去執(zhí)行“System.out.prinln("a");”這行代碼。我隨手寫了一段程序,你看看可能能幫助你理解。
    public class BreakTest {
    public static void main(String args[]) {
    System.out.println("循環(huán)沒有開始");

    System.out.println("現(xiàn)在開始測(cè)試continue");
    for (int i = 0; i < 3; i++) {
    System.out.println("開始第" + i + "次for循環(huán)");
    if (i == 1) {
    continue;
    }
    System.out.println("看看continue后這里執(zhí)行了嗎?");
    }
    System.out.println("continue測(cè)試完畢\n***********************");

    System.out.println("現(xiàn)在開始測(cè)試break");
    for (int i = 0; i < 3; i++) {
    System.out.println("開始第" + i + "次for循環(huán)");
    if (i == 1){
    break;
    }

    System.out.println("看看break后這里執(zhí)行了嗎?");
    }
    System.out.println("break測(cè)試完畢\n***********************");
    }
    }
    1. break 與 continue 加標(biāo)簽用法
    在Java語(yǔ)句里,唯一能放標(biāo)簽的地方是在循環(huán)語(yǔ)句前面。而且循環(huán)語(yǔ)句跟標(biāo)簽之間不能有任何東西。
    label1:
    outer-iteration {
      inner-iteration {
          //...
          break; // 1
          //...
          continue; // 2
          //...
          continue label1; // 3
          //...
          break label1; // 4
       }
    }

    案例1會(huì)中斷內(nèi)部循環(huán)。2會(huì)中斷內(nèi)部當(dāng)前循環(huán),直接跳入下一輪循環(huán)。案例3中斷內(nèi)部和外部循環(huán),跳到label1,從外部開頭重新開始循環(huán)。案例4跳到label1,且不在進(jìn)入循環(huán)。

    下面舉例:

    public class LabeledFor {
      static Test monitor = new Test();
      public static void main(String[] args) {
          int i = 0;
          outer: // Can't have statements here
          for(; true ;) { // infinite loop
               inner: // Can't have statements here
               for(; i < 10; i++) {
                    System.out.println('i = ' + i);
                    if(i == 2) {
                        System.out.println('continue');
                        continue;
                    }
                    if(i == 3) {
                        System.out.println('break');
                        i++; // Otherwise i never
                              // gets incremented.
                        break;
                    }
                    if(i == 7) {
                        System.out.println('continue outer');
                        i++; // Otherwise i never
                               // gets incremented.
                        continue outer;
                    }
                    if(i == 8) {
                        System.out.println('break outer');
                        break outer;
                    }

                    for(int k = 0; k < 5; k++) {
                        if(k == 3) {
                             System.out.println('continue inner');
                             continue inner;
                        }
                    }
               }
          }
      }
    ///:~

    結(jié)果:
    'i = 0',
    'continue inner',
    'i = 1',
    'continue inner',
    'i = 2',
    'continue',
    'i = 3',
    'break',
    'i = 4',
    'continue inner',
    'i = 5',
    'continue inner',
    'i = 6',
    'continue inner',
    'i = 7',
    'continue outer',
    'i = 8',
    'break outer'
        class TestBreak
        
    {
            
    static void Main(string[] args)
            
    {
                List
    <int> list = new List<int>();
                
    for (int i = 0; i < 100; i++)
                
    {
                    list.Add(i);
                }

                
    foreach (int i in list)
                
    {
                    
    if (i == 2)
                    
    {
                        
    continue;//結(jié)束此次循環(huán),不再執(zhí)行席邁的代碼,繼續(xù)下一次循環(huán)
                    }

                    
    if (i ==10)
                    
    {
                        
    break;//退出整個(gè)循環(huán)
                    }

                    Console.WriteLine(
    "該值為:" + i.ToString());
                }

            }

        }


    評(píng)論

    # re: continue與break的區(qū)別,用法  回復(fù)  更多評(píng)論   

    2007-04-14 10:44 by 我為J狂
    break 與 continue 加標(biāo)簽相當(dāng)于goto語(yǔ)句,不建議大家使用。

    # re: continue與break的區(qū)別,用法  回復(fù)  更多評(píng)論   

    2007-04-14 21:27 by 停留的風(fēng)
    @我為J狂
    說(shuō)的非常好。多謝提醒

    # re: continue與break的區(qū)別,用法  回復(fù)  更多評(píng)論   

    2007-06-01 09:43 by 148447809
    謝謝,讓我搞得更明白,這個(gè)很好

    # re: continue與break的區(qū)別,用法  回復(fù)  更多評(píng)論   

    2007-06-02 09:28 by yank
    客氣啦。大家互相學(xué)習(xí)哦
    主站蜘蛛池模板: 一级中文字幕免费乱码专区 | 亚洲an日韩专区在线| 在线观看免费人成视频色9| 亚洲aⅴ天堂av天堂无码麻豆| 国产亚洲精品拍拍拍拍拍| 日本免费人成视频在线观看| 亚洲精品午夜国产va久久| 最新精品亚洲成a人在线观看| 久久精品国产免费观看| 美女被艹免费视频| 久久精品亚洲一区二区三区浴池 | 亚洲毛片免费观看| 99久久精品日本一区二区免费| 亚洲AV永久无码精品一福利| 亚洲AV人人澡人人爽人人夜夜| 男女交性永久免费视频播放| a级毛片高清免费视频| 亚洲人成色在线观看| 亚洲邪恶天堂影院在线观看| 国产免费观看视频| 爱情岛论坛亚洲品质自拍视频网站| 亚洲欧洲国产精品香蕉网| 天堂在线免费观看中文版| 免费观看91视频| 成人午夜免费视频| 亚洲午夜无码毛片av久久京东热 | 一级特级aaaa毛片免费观看 | 亚洲AV永久无码精品一福利 | 日韩在线视精品在亚洲| 亚洲校园春色小说| 全免费a级毛片免费看不卡| 久久99精品免费视频| 免费一区二区三区在线视频 | 成人A毛片免费观看网站| 亚洲va中文字幕| 亚洲一区在线免费观看| 亚洲嫩模在线观看| 亚洲国产精品久久久天堂| 亚洲成AV人网址| 免费人妻av无码专区| 成人a免费α片在线视频网站|