正常的普通迴圈:

package tw.

public class TestBreakNContinueLabelEx1 {

   public static void main(String[] args) {

      for(int i=1;i<=5;i++){

          for(int j=1;j<=5;j++){

             System.out.println("i="+i+" j="+j);

         }}}}


i=1 j=1
i=1 j=2
i=1 j=3
i=1 j=4
i=1 j=5
i=2 j=1
i=2 j=2
i=2 j=3
i=2 j=4
i=2 j=5
i=3 j=1
i=3 j=2
i=3 j=3
i=3 j=4
i=3 j=5
i=4 j=1
i=4 j=2
i=4 j=3
i=4 j=4
i=4 j=5
i=5 j=1
i=5 j=2
i=5 j=3
i=5 j=4
i=5 j=5

 



public static void main(String[] args) {

      for(int i=1;i<=5;i++){//外迴圈

          for(int j=1;j<=5;j++){//內迴圈

             if(i==2 & j==3){

break;

//當達到條件時break,所以會跳出內迴圈,因此在i==2j==3之後,直接跳到i==3繼續進行

             }

             System.out.println("i="+i+" j="+j);

          }}}}


i=1 j=1
i=1 j=2
i=1 j=3
i=1 j=4
i=1 j=5
i=2 j=1
i=2 j=2
i=3 j=1
i=3 j=2
i=3 j=3
i=3 j=4
i=3 j=5
i=4 j=1
i=4 j=2
i=4 j=3
i=4 j=4
i=4 j=5
i=5 j=1
i=5 j=2
i=5 j=3
i=5 j=4
i=5 j=5

 



public class TestBreakNContinueLabelEx1 {

   public static void main(String[] args) {

      for(int i=1;i<=5;i++){//外迴圈

          for(int j=1;j<=5;j++){//內迴圈

             if(i==2 & j==3){//

             //若為break則中斷內部迴圈,若為continue則是只跳過這一次,也就是只跳過 i==2 & j==3

                continue;

             }

             System.out.println("i="+i+" j="+j);

         }}}}


i=1 j=1
i=1 j=2
i=1 j=3
i=1 j=4
i=1 j=5
i=2 j=1
i=2 j=2
i=2 j=4
i=2 j=5
i=3 j=1
i=3 j=2
i=3 j=3
i=3 j=4
i=3 j=5
i=4 j=1
i=4 j=2
i=4 j=3
i=4 j=4
i=4 j=5
i=5 j=1
i=5 j=2
i=5 j=3
i=5 j=4
i=5 j=5

 



public class TestBreakNContinueLabelEx1 {

   public static void main(String[] args) {

      test1://建立test1作為break要跳到哪裡的標籤

      //現在把標籤設在迴圈外,所以在i==2 & j==3之後就整個停了,另外注意因為列印是在外迴圈,所以列印出來的只到j==2

      for(int i=1;i<=5;i++){//外迴圈

          for(int j=1;j<=5;j++){//內迴圈

             if(i==2 & j==3){//

             //加上標籤(test1),則中斷後跳至標籤所在的外部,注意另一個test1的位置會影響迴圈走向

             break test1;//

             }

             System.out.println("i="+i+" j="+j);

         }}}}


i=1 j=1
i=1 j=2
i=1 j=3
i=1 j=4
i=1 j=5
i=2 j=1
i=2 j=2



public class TestBreakNContinueLabelEx1 {

   public static void main(String[] args) {

      for(int i=1;i<=5;i++){//外迴圈

          test1://放在內迴圈外、外迴圈內,效果就跟直接寫break一樣,等於是內回圈停止後跳至外迴圈

          for(int j=1;j<=5;j++){//內迴圈

             if(i==2 & j==3){//

             break test1;//

             }

             System.out.println("i="+i+" j="+j);

         }}}}


i=1 j=1
i=1 j=2
i=1 j=3
i=1 j=4
i=1 j=5
i=2 j=1
i=2 j=2
i=3 j=1
i=3 j=2
i=3 j=3
i=3 j=4
i=3 j=5
i=4 j=1
i=4 j=2
i=4 j=3
i=4 j=4
i=4 j=5
i=5 j=1
i=5 j=2
i=5 j=3
i=5 j=4
i=5 j=5

 



public class TestBreakNContinueLabelEx1 {

   public static void main(String[] args) {

      for(int i=1;i<=5;i++){//外迴圈

          for(int j=1;j<=5;j++){//內迴圈

             test1://放到這裡就跟沒有break一樣,因為他是在說「i==2 & j==3」時停下來,跳到這裡來,那他就會略過if繼續往下面print走了

             if(i==2 & j==3){//

             break test1;//}

             System.out.println("i="+i+" j="+j);

         }}}}


i=1 j=1
i=1 j=2
i=1 j=3
i=1 j=4
i=1 j=5
i=2 j=1
i=2 j=2
i=2 j=3
i=2 j=4
i=2 j=5
i=3 j=1
i=3 j=2
i=3 j=3
i=3 j=4
i=3 j=5
i=4 j=1
i=4 j=2
i=4 j=3
i=4 j=4
i=4 j=5
i=5 j=1
i=5 j=2
i=5 j=3
i=5 j=4
i=5 j=5
 

arrow
arrow
    全站熱搜

    乙方 發表在 痞客邦 留言(0) 人氣()