java的三種主要的回圈結構
在java5中引入了一種主要用於陣列的增強型for回圈
while是最基本的回圈結構位:
while(布爾表達式){
//回圈內容
}
只要布爾表達式爲true,回圈就會一直執行下去
對於while語句而言,如果不滿足條件,則不能進入回圈,但有時候我們需要即使不滿足條件,也至少執行一次。
do…while 回圈和while回圈相似,不同的是do…回圈至少會執行一次
do{
//程式碼語句
}while(表達式);
注意:布爾表達式在回圈體的後面,所以語句塊在檢測布爾表達式之前已經執行了。 如果布爾表達式的值爲 true,則語句塊一直執行,直到布爾表達式的值爲 false。
public class Test {
public static void main(String args[]){
int x = 10;
do{
System.out.print("value of x : " + x );
x++;
System.out.print("\n");
}while( x < 20 );
}
}
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
雖然所有回圈結構都可以用while或者do…while表示,但是Java提供了另一種語句–for回圈,使一些回圈結構變得更加簡單
for回圈執行的次數是在執行前就確定的。語法格式如下:
for(初始化;布爾表達式;更新){
//程式碼語句
}
關於for回圈有以下幾點說明:
public class Test {
public static void main(String args[]) {
for(int x = 10; x < 20; x = x+1) {
System.out.print("value of x : " + x );
System.out.print("\n");
}
}
}
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
java5引入了一種主要用於陣列的增強型for回圈
java爭搶for回圈語法格式如下
for(宣告語句:表達式){
//程式碼語句
}
宣告語句:宣告新的區域性變數,改變數的型別必須和陣列元素的型別匹配,其作用域限定在回圈語句塊,其值在此時陣列元素的值相等。
表達式:表達式是要存取的數據名,或者是返回值爲陣列的方法。
public class Test {
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主要用在回圈語句或者switch語句中,用來跳出整個語句塊
break跳出最裏層的回圈,並且繼續執行該回圈下面 下麪的語句
public class Test {
public static void main(String args[]) {
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ) {
// x 等於 30 時跳出回圈
if( x == 30 ) {
break;
}
System.out.print( x );
System.out.print("\n");
}
}
}
10
20
continue適用於熱河回圈控制結構中。作用是讓程式立刻跳轉到下一次回圈的迭代。
在for回圈中,continue語句使程式立即跳轉到更新語句
在while或者do…while回圈中,程式立即跳轉到布爾表達式的判斷語句
eg:
public class Test {
public static void main(String args[]) {
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ) {
if( x == 30 ) {
continue;
}
System.out.print( x );
System.out.print("\n");
}
}
}
10
20
40
50