Java中迴圈語句的控制
阿新 • • 發佈:2018-12-13
迴圈結構的控制語句
1,break語句
2,continue語句
3,return語句
1.break語句
在Java中,我們可以通過一些語句,比如break,continue,return來控制迴圈語句的執行;
break語句是當前的迴圈結束,後續的迴圈也結束
下面舉例子
package Hello; public class xunhuan { public static void main(String[] args) { for(int i=1;i<10;i++){ for(int j=1;j<10;j++){ System.out.print("i="+i+" j="+j+" "); } System.out.println(); } } }
輸出結果為:
i=1 j=1 i=1 j=2 i=1 j=3 i=1 j=4 i=1 j=5 i=1 j=6 i=1 j=7 i=1 j=8 i=1 j=9 i=2 j=1 i=2 j=2 i=2 j=3 i=2 j=4 i=2 j=5 i=2 j=6 i=2 j=7 i=2 j=8 i=2 j=9 i=3 j=1 i=3 j=2 i=3 j=3 i=3 j=4 i=3 j=5 i=3 j=6 i=3 j=7 i=3 j=8 i=3 j=9 i=4 j=1 i=4 j=2 i=4 j=3 i=4 j=4 i=4 j=5 i=4 j=6 i=4 j=7 i=4 j=8 i=4 j=9 i=5 j=1 i=5 j=2 i=5 j=3 i=5 j=4 i=5 j=5 i=5 j=6 i=5 j=7 i=5 j=8 i=5 j=9 i=6 j=1 i=6 j=2 i=6 j=3 i=6 j=4 i=6 j=5 i=6 j=6 i=6 j=7 i=6 j=8 i=6 j=9 i=7 j=1 i=7 j=2 i=7 j=3 i=7 j=4 i=7 j=5 i=7 j=6 i=7 j=7 i=7 j=8 i=7 j=9 i=8 j=1 i=8 j=2 i=8 j=3 i=8 j=4 i=8 j=5 i=8 j=6 i=8 j=7 i=8 j=8 i=8 j=9 i=9 j=1 i=9 j=2 i=9 j=3 i=9 j=4 i=9 j=5 i=9 j=6 i=9 j=7 i=9 j=8 i=9 j=9
假如現在需要把i=2的這一行不輸出,這時我們可以用break結束當前迴圈
package Hello;
public class xunhuan {
public static void main(String[] args) {
for(int i=1;i<10;i++){
for(int j=1;j<10;j++){
if(i==2){
break;
}
System.out.print("i="+i+" j="+j+" ");
}
System.out.println();
}
}
}
當i=1時,break結束整個內層迴圈,直接執行外層迴圈
輸出結果為:
i=1 j=1 i=1 j=2 i=1 j=3 i=1 j=4 i=1 j=5 i=1 j=6 i=1 j=7 i=1 j=8 i=1 j=9
i=3 j=1 i=3 j=2 i=3 j=3 i=3 j=4 i=3 j=5 i=3 j=6 i=3 j=7 i=3 j=8 i=3 j=9
i=4 j=1 i=4 j=2 i=4 j=3 i=4 j=4 i=4 j=5 i=4 j=6 i=4 j=7 i=4 j=8 i=4 j=9
i=5 j=1 i=5 j=2 i=5 j=3 i=5 j=4 i=5 j=5 i=5 j=6 i=5 j=7 i=5 j=8 i=5 j=9
i=6 j=1 i=6 j=2 i=6 j=3 i=6 j=4 i=6 j=5 i=6 j=6 i=6 j=7 i=6 j=8 i=6 j=9
i=7 j=1 i=7 j=2 i=7 j=3 i=7 j=4 i=7 j=5 i=7 j=6 i=7 j=7 i=7 j=8 i=7 j=9
i=8 j=1 i=8 j=2 i=8 j=3 i=8 j=4 i=8 j=5 i=8 j=6 i=8 j=7 i=8 j=8 i=8 j=9
i=9 j=1 i=9 j=2 i=9 j=3 i=9 j=4 i=9 j=5 i=9 j=6 i=9 j=7 i=9 j=8 i=9 j=9
我們發現i=2的這行並沒有輸出
break標籤
關鍵break 還有一個break標籤 我們可以從內層跳到外層,結束外層迴圈;
比如我們只需要輸出第一行 我們時候可以用標籤實現:
package Hello;
public class xunhuan {
public static void main(String[] args) {
out:
for(int i=1;i<10;i++){
for(int j=1;j<10;j++){
if(i==2){
break out;
}
System.out.print("i="+i+" j="+j+" ");
}
System.out.println();
}
}
}
break直接跳到外層迴圈,執行外層迴圈的結果;
輸出結果為:
i=1 j=1 i=1 j=2 i=1 j=3 i=1 j=4 i=1 j=5 i=1 j=6 i=1 j=7 i=1 j=8 i=1 j=9
2.continue語句
continue是跳過當前迴圈,直接執行後續的迴圈
假如在輸出1-10的數字時,如果想去掉5和8的話,就可以用continue語句;
package Hello;
public class test {
public static void main(String[] args) {
for(int i=1;i<10;i++){
if(i==5||i==8){
continue;
}
System.out.print(i+" ");
}
}
}
輸出結果為:
1 2 3 4 6 7 9
如果此處改為break,break是結束後續迴圈
package Hello;
public class test {
public static void main(String[] args) {
for(int i=1;i<10;i++){
if(i==5||i==8){
break;
}
System.out.print(i+" ");
}
}
}
結果為:
1 2 3 4
讀者可以體會一下break與continue的區別
3.return語句
return語句是直接結束整個程式的執行
package Hello;
public class test {
public static void main(String[] args) {
for(int i=1;i<10;i++){
if(i==5||i==8){
break;
}
System.out.print(i+" ");
}
System.out.println("執行到這裡");
}
}
這是break語句的結束後續迴圈,但是並沒有結束整個程式的執行,程式一直執行到for迴圈外面
結果為:
1 2 3 4 執行到這裡
而return語句是結束整個程式的執行
package Hello;
public class test {
public static void main(String[] args) {
for(int i=1;i<10;i++){
if(i==5||i==8){
return;
}
System.out.print(i+" ");
}
System.out.println("執行到這裡");
}
}
return語句直接終止程式的執行
其結果為:
1 2 3 4
for迴圈外面的程式也被終止
讀者可以體會一下return和break的區別