Java循環(huán)結(jié)構(gòu)

順序結(jié)構(gòu)的程序語句只能被執(zhí)行一次。如果您想要同樣的操作執(zhí)行多次,,就需要使用循環(huán)結(jié)構(gòu)。

Java中有三種主要的循環(huán)結(jié)構(gòu):

while?循環(huán)

do…while?循環(huán)

for?循環(huán)

在Java5中引入了一種主要用于數(shù)組的增強(qiáng)型for循環(huán)。

while 循環(huán)

while是最基本的循環(huán),它的結(jié)構(gòu)為:

while( 布爾表達(dá)式 ) {? //循環(huán)內(nèi)容}

只要布爾表達(dá)式為 true,循環(huán)就會(huì)一直執(zhí)行下去。

實(shí)例

Test.java 文件代碼:

public class Test {? public static void main(String args[]) {? ? ? int x = 10;

? ? ? while( x < 20 ) {? ? ? ? System.out.print("value of x : " + x );

? ? ? ? x++;

? ? ? ? System.out.print("\n");

? ? ? }? }}

以上實(shí)例編譯運(yùn)行結(jié)果如下:

value of x : 10value of x : 11value of x : 12value of x : 13value of x : 14value of x : 15value of x : 16value of x : 17value of x : 18value of x : 19

do…while 循環(huán)

對(duì)于 while 語句而言,如果不滿足條件,則不能進(jìn)入循環(huán)。但有時(shí)候我們需要即使不滿足條件,也至少執(zhí)行一次。

do…while 循環(huán)和 while 循環(huán)相似,不同的是,do…while 循環(huán)至少會(huì)執(zhí)行一次。

do {? ? ? //代碼語句}while(布爾表達(dá)式);

注意:布爾表達(dá)式在循環(huán)體的后面,所以語句塊在檢測(cè)布爾表達(dá)式之前已經(jīng)執(zhí)行了。 如果布爾表達(dá)式的值為 true,則語句塊一直執(zhí)行,直到布爾表達(dá)式的值為 false。

實(shí)例

Test.java 文件代碼:

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 );

? }}

以上實(shí)例編譯運(yùn)行結(jié)果如下:

value of x : 10value of x : 11value of x : 12value of x : 13value of x : 14value of x : 15value of x : 16value of x : 17value of x : 18value of x : 19

for循環(huán)

雖然所有循環(huán)結(jié)構(gòu)都可以用 while 或者 do...while表示,但 Java 提供了另一種語句 —— for 循環(huán),使一些循環(huán)結(jié)構(gòu)變得更加簡(jiǎn)單。

for循環(huán)執(zhí)行的次數(shù)是在執(zhí)行前就確定的。語法格式如下:

for(初始化; 布爾表達(dá)式; 更新) {? ? //代碼語句}

關(guān)于 for 循環(huán)有以下幾點(diǎn)說明:

最先執(zhí)行初始化步驟??梢月暶饕环N類型,但可初始化一個(gè)或多個(gè)循環(huán)控制變量,也可以是空語句。

然后,檢測(cè)布爾表達(dá)式的值。如果為 true,循環(huán)體被執(zhí)行。如果為false,循環(huán)終止,開始執(zhí)行循環(huán)體后面的語句。

執(zhí)行一次循環(huán)后,更新循環(huán)控制變量。

再次檢測(cè)布爾表達(dá)式。循環(huán)執(zhí)行上面的過程。

實(shí)例

Test.java 文件代碼:

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");

? ? ? }? }}

以上實(shí)例編譯運(yùn)行結(jié)果如下:

value of x : 10value of x : 11value of x : 12value of x : 13value of x : 14value of x : 15value of x : 16value of x : 17value of x : 18value of x : 19

Java 增強(qiáng) for 循環(huán)

Java5 引入了一種主要用于數(shù)組的增強(qiáng)型 for 循環(huán)。

Java 增強(qiáng) for 循環(huán)語法格式如下:

for(聲明語句 : 表達(dá)式){? //代碼句子}

聲明語句:聲明新的局部變量,該變量的類型必須和數(shù)組元素的類型匹配。其作用域限定在循環(huán)語句塊,其值與此時(shí)數(shù)組元素的值相等。

表達(dá)式:表達(dá)式是要訪問的數(shù)組名,或者是返回值為數(shù)組的方法。

實(shí)例

Test.java 文件代碼:

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(",");

? ? ? }? }}

以上實(shí)例編譯運(yùn)行結(jié)果如下:

10,20,30,40,50,James,Larry,Tom,Lacy,

break 關(guān)鍵字

break 主要用在循環(huán)語句或者 switch 語句中,用來跳出整個(gè)語句塊。

break 跳出最里層的循環(huán),并且繼續(xù)執(zhí)行該循環(huán)下面的語句。

語法

break 的用法很簡(jiǎn)單,就是循環(huán)結(jié)構(gòu)中的一條語句:

break;

實(shí)例

Test.java 文件代碼:

public class Test {? public static void main(String args[]) {? ? ? int [] numbers = {10, 20, 30, 40, 50};

? ? ? for(int x : numbers ) {? ? ? ? // x 等于 30 時(shí)跳出循環(huán)? ? ? ? if( x == 30 ) {? ? ? ? ? ? break;

? ? ? ? }? ? ? ? System.out.print( x );

? ? ? ? System.out.print("\n");

? ? ? }? }}

以上實(shí)例編譯運(yùn)行結(jié)果如下:

1020

continue 關(guān)鍵字

continue 適用于任何循環(huán)控制結(jié)構(gòu)中。作用是讓程序立刻跳轉(zhuǎn)到下一次循環(huán)的迭代。

在 for 循環(huán)中,continue 語句使程序立即跳轉(zhuǎn)到更新語句。

在 while 或者 do…while 循環(huán)中,程序立即跳轉(zhuǎn)到布爾表達(dá)式的判斷語句。

語法

continue 就是循環(huán)體中一條簡(jiǎn)單的語句:

continue;

實(shí)例

Test.java 文件代碼:

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");

? ? ? }? }}

以上實(shí)例編譯運(yùn)行結(jié)果如下:

10204050

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容