循環(huán)是一種重復(fù)執(zhí)行一段代碼的結(jié)構(gòu)。Java提供了四種主要的循環(huán)結(jié)構(gòu):for循環(huán)、增強(qiáng)for循環(huán)、while循環(huán)和do-while循環(huán)。
(1) for循環(huán):for循環(huán)用于在已知循環(huán)次數(shù)的情況下重復(fù)執(zhí)行一段代碼。它由三個部分組成:初始化、條件判斷和迭代。語法如下:
for (初始化; 條件判斷; 迭代) { // 循環(huán)體代碼}
(2) 增強(qiáng)for循環(huán)(也稱為foreach循環(huán)):增強(qiáng)for循環(huán)適用于遍歷數(shù)組或集合等可迭代對象,每次循環(huán)將遍歷對象中的一個元素,并將其賦值給變量。
for (元素類型 變量名 : 遍歷對象) { // 循環(huán)體}
(3) while循環(huán):while循環(huán)用于在條件滿足的情況下重復(fù)執(zhí)行一段代碼。它只有一個條件判斷部分。語法如下:
while (條件判斷) { // 循環(huán)體代碼}
(4) do-while循環(huán):do-while循環(huán)與while循環(huán)類似,但它先執(zhí)行一次循環(huán)體,然后再進(jìn)行條件判斷。語法如下:
do { // 循環(huán)體代碼} while (條件判斷);
這些循環(huán)結(jié)構(gòu)可以幫助我們實(shí)現(xiàn)重復(fù)執(zhí)行某段代碼的需求,提高代碼的靈活性和效率。在使用循環(huán)時(shí),需要注意循環(huán)條件的設(shè)置,以避免造成死循環(huán)。
(1) 使用break語句:可以在循環(huán)體內(nèi)部使用break語句來終止循環(huán)。當(dāng)滿足某個條件時(shí),執(zhí)行break語句,循環(huán)將立即終止。
for (int i = 0; i < 10; i++) { if (i == 5) { break; } System.out.println(i);}
上述示例中,當(dāng)i等于5時(shí),執(zhí)行break語句,循環(huán)將終止。
(2) 使用return語句:如果循環(huán)是在一個方法中進(jìn)行的,可以使用return語句來終止循環(huán)。當(dāng)滿足某個條件時(shí),執(zhí)行return語句,方法將立即返回。
public void loopExample() { for (int i = 0; i < 10; i++) { if (i == 5) { return; } System.out.println(i); }}
上述示例中,當(dāng)i等于5時(shí),執(zhí)行return語句,方法將立即返回,循環(huán)也將終止。
(3) 使用continue語句來終止當(dāng)前循環(huán)的迭代,并跳到下一次迭代。
for (int i = 0; i < 10; i++) { if (i == 5) { continue; // 當(dāng)i等于5時(shí),跳過當(dāng)前迭代,繼續(xù)下一次迭代 } System.out.println(i);}
上述代碼中,當(dāng)i等于5時(shí),執(zhí)行continue語句來跳過當(dāng)前迭代,繼續(xù)下一次迭代。
(4) 使用throw語句來拋出異常,從而終止循環(huán)。
public class Main { public static void main(String[] args) { try { for (int i = 0; i < 10; i++) { if (i == 5) { throw new RuntimeException("終止循環(huán)"); } System.out.println("當(dāng)前數(shù)字:" + i); } } catch (RuntimeException e) { System.out.println(e.getMessage()); } }}
在上述示例中,當(dāng)i的值等于5時(shí),使用throw語句在循環(huán)中拋出了一個RuntimeException異常,循環(huán)被終止。在catch塊中,我們捕獲并處理了這個異常,打印出異常的消息。
(5) 使用標(biāo)簽終止循環(huán)。
outerLoop: for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { if (i == 2 && j == 2) { break outerLoop; // 當(dāng) i 等于 2 且 j 等于 2 時(shí),終止外層循環(huán) } System.out.println("i: " + i + ", j: " + j); }}
在Java中,可以使用break語句來終止循環(huán)。當(dāng)break語句被執(zhí)行時(shí),循環(huán)會立即停止執(zhí)行,并且程序會跳出循環(huán)體繼續(xù)執(zhí)行循環(huán)后面的代碼。
break語句只會終止當(dāng)前所在的循環(huán),如果嵌套了多層循環(huán),break語句只會終止最內(nèi)層的循環(huán)。如果需要終止外層循環(huán),可以使用標(biāo)簽來標(biāo)識循環(huán),并在break語句中指定標(biāo)簽。
上述代碼中,外層循環(huán)使用了標(biāo)簽outerLoop,當(dāng)內(nèi)層循環(huán)中的條件滿足時(shí),break outerLoop語句會被執(zhí)行,從而終止外層循環(huán)。
(6) 使用標(biāo)志變量終止循環(huán):標(biāo)志變量是一個布爾類型的變量,用于控制循環(huán)是否繼續(xù)執(zhí)行。當(dāng)標(biāo)志變量的值為true時(shí),循環(huán)繼續(xù)執(zhí)行;當(dāng)標(biāo)志變量的值為false時(shí),循環(huán)終止。
public class Main { public static void main(String[] args) { boolean flag = true; int count = 0; while (flag) { count++; System.out.println("循環(huán)次數(shù):" + count); if (count == 5) { flag = false; // 設(shè)置標(biāo)志變量為false,終止循環(huán) } } System.out.println("循環(huán)結(jié)束"); }}
在上面的代碼中,我們使用了一個名為flag的布爾型標(biāo)志變量來控制循環(huán)的終止條件。當(dāng)flag為true時(shí),循環(huán)會一直執(zhí)行;當(dāng)flag為false時(shí),循環(huán)會終止。
在循環(huán)體內(nèi)部,我們使用count變量來記錄循環(huán)的次數(shù),并在每次循環(huán)開始時(shí)打印出循環(huán)次數(shù)。當(dāng)count等于5時(shí),我們將flag設(shè)置為false,從而終止循環(huán)。
使用標(biāo)志變量終止循環(huán)的好處是可以在循環(huán)體內(nèi)部根據(jù)需要動態(tài)地修改標(biāo)志變量的值,從而靈活地控制循環(huán)的終止。
本文鏈接:http://www.www897cc.com/showinfo-26-16386-0.htmlJava循環(huán)的終止方式
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com
上一篇: Go 重構(gòu):盡量避免使用 else、break 和 continue
下一篇: 前端日歷實(shí)現(xiàn):公歷、農(nóng)歷、黃歷、星座、節(jié)氣、天干、地支、八字、星宿、五行...