官术网_书友最值得收藏!

3.4 跳轉語句

Java語言有3種跳轉語句,分別是break語句、continue語句和return語句。

3.4.1 break語句

在Java中,break語句有兩種作用:一是在switch語句中被用來終止一個語句序列;另一種是在循環結構中用來退出循環。

當使用break語句直接強行退出循環時,忽略循環體中的任何其他語句和循環條件測試。在循環中遇到break語句時,循環被終止,程序控制轉到循環后面的語句重新開始。

例3-9】 break語句使用舉例。

        //文件名:BreakLoop1.java
        public class BreakLoop1{
            public static void main(String args[]) {
                for(int i=0; i<100; i++){
                    if (i==2)
                        break;                    //如果i=10, 終止循環
                    System.out.println("i: "+i);
                }
                System.out.println("Loop complete. ");
            }
        }

程序的運行結果如下:

        i:0
        i:1
        Loop complete.

在多重循環中使用break語句時,它僅能終止其所在的循環層。

例3-10】 break語句在多重循環中的應用。

        //文件名:BreakLoop2.java
        public class BreakLoop2{
            public static void main(String args[]) {
                for (int i=0; i<3; i++){
                    System.out.print("Pass "+i+": ");
                    for (int  j=0; j<100; j++) {
                        if (j==10)
                            break;              //如果j=10, 終止循環
                        System.out.print( j+" ");
                    }
                    System.out.println();
                }
                System.out.println("Loops complete.");
            }
        }

程序的運行結果如下:

        Pass 0:0 1 2 3 4 5 6 7 8 9
        Pass 1:0 1 2 3 4 5 6 7 8 9
        Pass 2:0 1 2 3 4 5 6 7 8 9
        Loops complete.

可以看出,在內部循環中的break語句僅僅終止了該循環,外部的循環不受影響。

3.4.2 continue語句

break語句用來退出循環,而continue語句則跳過循環體中尚未執行的語句,回到循環體的開始處繼續下一輪的循環。當然,在下一輪循環開始前,要先進行終止條件的判斷,以決定是否繼續循環,對于for語句,在進行終止條件的判斷前,還要先執行步長迭代語句。

例3-11】 打印乘法九九表。

        //文件名:MultiList.java
        public  class  MultiList{
            public static void main(String args[]){
                for (int i=1; i<=9; i++){
                    for(int j=1; j<=i; j++){
                        System.out.print(j+"*"+i+"="+j*i+" ");
                        if (i==j){
                            System.out.print("\n");
                            //如果i=j則跳轉到外層循環的起始(continue要換成break)
                            continue;
                        }
                    }
                }
            }
        }

程序的運行結果如下:

      1*1=1
      1*2=2  2*2=4
      1*3=3  2*3=6  3*3=9
      1*4=4  2*4=8  3*4=12 4*4=16
      1*5=5  2*5=10 3*5=15 4*5=20 5*5=25
      1*6=6  2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
      1*7=7  2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
      1*8=8  2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
      1*9=9  2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

3.4.3 return語句

return語句的主要功能是從一個方法返回到另一個方法。也就是說,return語句使程序控制返回到調用它的方法。因此將它分類為跳轉語句。

例3-12】 return語句應用舉例。

        //文件名:ReturnExample.java
        public class ReturnExample{
            public static void main(String args[]) {
                boolean  t=true;
                System.out.println("Before the return.");
                if (t)
                    return;
                System.out.println("This won't execute.");
            }
        }

程序的運行結果如下:

        Before the return.

正如程序結果所示,程序最后的println()語句沒有被執行。一旦return語句被執行,程序控制被傳遞到它的調用者。

主站蜘蛛池模板: 阿坝| 宜川县| 巨鹿县| 泊头市| 拜城县| 蕲春县| 潮安县| 扎赉特旗| 兴仁县| 巴彦县| 沽源县| 公安县| 桂东县| 百色市| 汶上县| 阳曲县| 呼和浩特市| 剑阁县| 宝山区| 永定县| 塔河县| 舒城县| 翁牛特旗| 葵青区| 广灵县| 申扎县| 甘泉县| 永新县| 孙吴县| 石棉县| 双城市| 湾仔区| 霸州市| 诸暨市| 莫力| 许昌市| 顺平县| 岱山县| 河西区| 潜山县| 安塞县|