Java中結(jié)束循環(huán)的方法
Java中結(jié)束循環(huán)的方法
**1、**使用break結(jié)束本層循環(huán)
? 使用 break 標(biāo)簽; 語句,結(jié)束外層循環(huán)
public static void main(String[] args){ int i,j; outer: //外層循環(huán)的標(biāo)簽 for(i=0;i<3;i++) { for(j=0;j<4;j++) { System.out.println("當(dāng)前的i值:"+i+",當(dāng)前的j值:"+j); if(j==1) { break outer; //結(jié)束外層循環(huán) } } } }
輸出結(jié)果:當(dāng)前的i值:0,當(dāng)前的j值:0
當(dāng)前的i值:0,當(dāng)前的j值:1
如果不采用break outer; 而直接是break,則只會跳出本層循環(huán),即j所控制的循環(huán),而不會跳出i循環(huán)
public static void main(String[] args){ int i,j; //outer: for(i=0;i<3;i++) { for(j=0;j<4;j++) { System.out.println("當(dāng)前的i值:"+i+",當(dāng)前的j值:"+j); if(j==1) { break; } } } }
輸出結(jié)果:當(dāng)前的i值:0,當(dāng)前的j值:0
當(dāng)前的i值:0,當(dāng)前的j值:1
當(dāng)前的i值:1,當(dāng)前的j值:0
當(dāng)前的i值:1,當(dāng)前的j值:1
當(dāng)前的i值:2,當(dāng)前的j值:0
當(dāng)前的i值:2,當(dāng)前的j值:1
2、使用continue結(jié)束本次循環(huán):忽略本次循環(huán)continue后的所有循環(huán)體內(nèi)的語句,開始下一輪循環(huán)**
? 使用continue 標(biāo)簽;語句,忽略本次循環(huán)中標(biāo)簽所指定的循環(huán)體內(nèi)的所有語句
public static void main(String[] args){ int i,j; outer: for(i=0;i<3;i++) { for(j=0;j<4;j++) { System.out.println("當(dāng)前的i值:"+i+",當(dāng)前的j值:"+j); if(j==1) { continue outer; //跳出本次循環(huán)后的所有語句 } } } }
輸出結(jié)果:當(dāng)前的i值:0,當(dāng)前的j值:0
當(dāng)前的i值:0,當(dāng)前的j值:1
當(dāng)前的i值:1,當(dāng)前的j值:0
當(dāng)前的i值:1,當(dāng)前的j值:1
當(dāng)前的i值:2,當(dāng)前的j值:0
當(dāng)前的i值:2,當(dāng)前的j值:1
每進(jìn)行一次外層循環(huán)時,當(dāng)內(nèi)層循環(huán)j==1時,都將直接結(jié)束本次外層循環(huán)后的所有語句,即j++在j=1后一直被忽略,得不到執(zhí)行
public static void main(String[] args){ int i; for(i=0;i<3;i++) { System.out.println("當(dāng)前的i值:"+i); if(i==1) { continue; //忽略后面一個輸出語句 } System.out.println("continue后的語句"); } }
輸出結(jié)果:當(dāng)前的i值:0
continue后的語句
當(dāng)前的i值:1
當(dāng)前的i值:2
continue后的語句
由于continue的存在,當(dāng)i==1的時候,并未輸出:continue后的語句 這句話。
3、使用return結(jié)束整個方法:在程序運行過程中,如果碰到return語句,則結(jié)束該整個方法
public static void main(String[] args){ int i; for(i=0;i<3;i++) { System.out.println("當(dāng)前的i值:"+i); if(i==1) { return; } } System.out.println("hello world"); }
輸出結(jié)果:當(dāng)前的i值:0
當(dāng)前的i值:1
在return處,結(jié)束了整個main方法,即使輸出hello world的語句位于循環(huán)體外,也不會被執(zhí)行
因此注意:return是結(jié)束了整個方法,無論這個return處于多少層循環(huán)之中,都將直接跳出整個循環(huán),整個方法中的所有語句都將不會再執(zhí)行。
java結(jié)束本次循環(huán)
一共四種類型
一、跳出本次循環(huán)(continue)
for(int i = 0; i< ?999; i++){ ? ? ? ?if(i == 520){ ? ? ? ? ? ? log.debug("啊哈!"); ? ? ? ? ? ? continue; ? ? ? ?} ? ? ? ? ? ?log.debug("蕪湖!"); }
二、跳出本層循環(huán),也就是這個循環(huán)體的結(jié)束(break)
for (int i = 0; i < 999; i++) { ? ? ? ? ? ? for (int j = 0; j < 999; j++) { ? ? ? ? ? ? ? ? if (j == 520) { ? ? ? ? ? ? ? ? ? ? log.debug("你好啊!"); ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? if (j == 456) { ? ? ? ? ? ? ? ? ? ? log.debug("我很好!"); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? log.debug("蕪湖!"); ? ? ? ? ? ? } }
三、.跳出多層循環(huán)。(break loop)loop可以自己定義
loop: for (int i = 0; i < 999; i++) { ? ? for (int j = 0; j < 99; j++) { ? ? ? ? if (j == 52) { ? ? ? ? ? ? log.debug("好啊!"); ? ? ? ? ? ? break loop; ? ? ? ? } ? ? ? ? if (j == 14) { ? ? ? ? ? ?log.debug("很好啊!"); ? ? ? ? } ? ? ? ? log.debug("蕪湖!"); ? ? } ? ? log.debug("666!"); }
四、跳出方法(return)
登錄后復(fù)制
private static void Test(){ ? ? for(int i= 0; i < 999; i++){ ? ? ? ? if(i < 520){ ? ? ? ? ? ? log.debug("我先下線!"); ? ? ? ? } ? ? ? ? if(i == 888){ ? ? ? ? ? ? log.debug("我走了!"); ? ? ? ? ? ? return; ? ? ? ? } ? ? } ? ? log.debug("別走!"); }
到此這篇關(guān)于Java中結(jié)束循環(huán)的方法的文章就介紹到這了,更多相關(guān)java結(jié)束循環(huán)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IntelliJ IDEA 統(tǒng)一設(shè)置編碼為utf-8編碼的實現(xiàn)
這篇文章主要介紹了IntelliJ IDEA 統(tǒng)一設(shè)置編碼為utf-8編碼的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2020-06-06Java旋轉(zhuǎn)數(shù)組中最小數(shù)字具體實現(xiàn)(圖文詳解版)
這篇文章主要給大家介紹了關(guān)于Java旋轉(zhuǎn)數(shù)組中最小數(shù)字具體實現(xiàn)的相關(guān)資料,旋轉(zhuǎn)數(shù)組,說明數(shù)據(jù)不變,只是改變位置,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-08-08解決Java變異出現(xiàn)錯誤No enclosing instance of type XXX is accessible
這牌你文章主要給大家分享解決Java變異出現(xiàn)錯誤,具體的饑餓絕方案請看下面文章的內(nèi)容,需要的朋友可以參考一下,希望能幫助到你2021-09-09MyBatis關(guān)聯(lián)查詢的實現(xiàn)
MyBatis可以通過定義多個表的關(guān)聯(lián)關(guān)系,實現(xiàn)多表查詢,本文主要介紹了MyBatis關(guān)聯(lián)查詢的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下2023-11-11java實現(xiàn)String字符串處理各種類型轉(zhuǎn)換
在日常的程序開發(fā)中,經(jīng)常會涉及到不同類型之間的轉(zhuǎn)換,本文主要介紹了String字符串處理各種類型轉(zhuǎn)換,具有一定的參考價值,感興趣的可以了解一下2023-10-10