標(biāo)號(hào)與continue,break

          Posted on 2007-09-18 20:48 流浪韓 閱讀(558) 評(píng)論(0)  編輯  收藏 所屬分類: J2SE

          標(biāo)號(hào)與continue,break


              可以給語句塊加標(biāo)號(hào)賦予它們名稱,標(biāo)號(hào)位于語句之前。標(biāo)號(hào)只能被continue和break引用。格式如下:
              label:statement
              語句前只允許加一個(gè)標(biāo)號(hào),標(biāo)號(hào)后面不能跟大括號(hào)。通過用break后加標(biāo)號(hào)對(duì)處于標(biāo)號(hào)中的語句進(jìn)行控制。往往標(biāo)號(hào)后是for.while.do-while等循環(huán)。
              通過用標(biāo)號(hào),我們可以對(duì)外層循環(huán)進(jìn)行控制
          下面是用continue控制標(biāo)號(hào)
          public class Label {

              public static void main(String[] args) {
                  System.out.println("i j");
                  search:
                      for (int i = 0; i < 3; i++) {
                          for (int j = 0; j < 50; j++) {
                              if (j == 3)
                                  continue search;
                              System.out.println(i+" "+j);
                          }
                      }
              }
          }
          輸出如下:

          i j
          0 0
          0 1
          0 2
          1 0
          1 1
          1 2
          2 0
          2 1
          2 2


          可以看出內(nèi)層循環(huán)并沒有執(zhí)行50次,而到了continue時(shí)就跳到最外層循環(huán)去了,continue執(zhí)行后執(zhí)行的是i++.

           

          下面是用break控制標(biāo)號(hào)

          public class Label {

              public static void main(String[] args) {
                  // TODO Auto-generated method stub
                  System.out.println("i j");
                  search:
                      for (int i = 0; i < 3; i++) {
                          for (int j = 0; j < 50; j++) {
                              if (j == 3)
                                  break search;
                              System.out.println(i+" "+j);
                          }
                      }
              }
          }

          輸出如下:

          i j
          0 0
          0 1
          0 2
           

          可以看出內(nèi)層循環(huán)也沒有執(zhí)行50次,而且break后循環(huán)就再也沒執(zhí)行。break跳出的是最外層循環(huán),跳出了標(biāo)號(hào)的范圍。

           

          break跳出標(biāo)號(hào)對(duì)查詢一條記錄來說比較有用,當(dāng)查出自己想要的一條記錄時(shí),就可以跳出循環(huán)了,不用再執(zhí)行了。

          其中標(biāo)號(hào)的另一個(gè)用意就在于讓程序員不去用goto(替代了goto),寫出更安全,干凈的代碼


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 博兴县| 大同市| 开化县| 蕉岭县| 平舆县| 赤城县| 广德县| 刚察县| 石台县| 望江县| 美姑县| 临泽县| 柳河县| 奉新县| 临武县| 婺源县| 即墨市| 武汉市| 来宾市| 定安县| 长沙市| 台安县| 吴江市| 利辛县| 苍南县| 张掖市| 吉木乃县| 正安县| 临沭县| 棋牌| 望谟县| 平阳县| 华蓥市| 侯马市| 长垣县| 牟定县| 弥渡县| 淳化县| 内丘县| 丽江市| 昌宁县|