JAVA總結(流程控制2--迴圈結構)
流程控制--迴圈結構
1、while迴圈
結構:while(布林表示式){ 迴圈內容 }
例:
public static void main(String[] args){
int i = 1;
while(i<=10){
i++;
System.out.println("i的值為:"+i);
}
}
結果輸出:
i的值為:2
i的值為:3
i的值為:4
i的值為:5
i的值為:6
i的值為:7
i的值為:8
i的值為:9
i的值為:10
i的值為:11
2、do...while迴圈
結構:do{
//要迴圈的語句
}while(布林表示式);
注意:對於while語句,布林表示式為false就不執行迴圈語句,但do...while迴圈語句,即使不滿足條件也會執行一次。(至少會執行一次)。當while()內的布林表示式為false時迴圈語句會再執行一次結束迴圈;
例:
public static void main(String[] args){
int i = 1;
do{
i++;
System.out.println("i的值為:"+i);
}while(i<5);
}
結果輸出:
i的值為:2
i的值為:3
i的值為:4
i的值為:5
3、for迴圈
結構:for(初始化 ; 布林表示式 ;更新){
//迴圈語句
}
注意:
最先執行初始化,可以宣告一種型別,可以初始化一個或多個迴圈控制變數,也可以是空語句。
檢測布林表示式,為true執行迴圈語句,false不執行。
迴圈一次後,迴圈控制變數更新。
例:
public static void main(String[] args){
for(int j=0,i=0; j<5;j++){
i=j;
System.out.println("i的值為:"+i);
}
}
結果輸出:
i的值為:0
i的值為:1
i的值為:2
i的值為:3
i的值為:4
4、foreach迴圈
結構:for(宣告語句:表示式){
//迴圈語句
}
注意:
宣告語句:宣告新的區域性變數,該變數的型別必須和陣列元素的型別匹配。其作用域限定在迴圈語句塊,其值與此時陣列元素的值相等。
表示式:表示式是要訪問的陣列名,或者是返回值為陣列的方法。
例:public static void main(String args[]){
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ){
System.out.print( x );
System.out.print(",");
}
System.out.print("\n");
String [] names ={"James", "Larry", "Tom", "Lacy"};
for( String name : names ) {
System.out.print( name );
System.out.print(",");
}
}
結構輸出:
10,20,30,40,50,
James,Larry,Tom,Lacy,
注意:
break語句的作用:
1、只能在迴圈體內和switch語句體內使用break語句。
2、當break出現在迴圈體中的switch語句體內時,其作用只是跳出該switch語句體。
3、當break出現在迴圈體中,但並不在switch語句體內時,則在執行break後,跳出本層迴圈體。
4、在迴圈結構中,應用break語句使流程跳出本層迴圈體,從而提前結束本層迴圈。
continue語句作用:
1、continue語句一般形式為:contonue;
2、其作用是結束本次迴圈,即跳過本次迴圈體中餘下尚未執行的語句,接著再一次進行迴圈的條件判定。
3、注意:執行continue語句並沒有使整個迴圈終止。在while和do-while迴圈中,continue語句使得流程直接跳到迴圈控制條件的測試部分,然後決定是否繼續進行。
4、在for迴圈中,遇到continue後,跳過迴圈體中餘下的語句,而去對for語句中的“表示式3”求值,然後進行“表示式2”的條件測試,最後根據“表示式2”的值來決定for迴圈是否執行。迴圈體內,不論continue是作為何種語言的語句成分,都按上述功能執行,這點與bresk有所不同。
標籤:
例:
public static void main(String args[]){
int i = 2;
a: switch(i){
case 1:
System.out.println(i);
case 2:
System.out.println(i);
break a;
}
}
結果輸出:2