詳解Java中while和do-while循環(huán)、break的使用
循環(huán)結(jié)構(gòu)分兩大類(lèi),一類(lèi)是當(dāng)型,一類(lèi)是直到型。
當(dāng)型:
當(dāng)布爾值表達(dá)式條件為T(mén)rue時(shí),反復(fù)執(zhí)行某語(yǔ)句,當(dāng)布爾表達(dá)式的值為False時(shí)才停止循環(huán),例如:while 與 for循環(huán)。
直到型:
先執(zhí)行某語(yǔ)句,在判斷布爾表達(dá)式,如果為true,再執(zhí)行某語(yǔ)句,如此反復(fù),直到布爾表達(dá)式條件為false時(shí)才停止循環(huán),例如do - while循環(huán)。
語(yǔ)法結(jié)構(gòu):
while (布爾表達(dá)式)
{
循環(huán)體;
}
一、循環(huán)結(jié)構(gòu)語(yǔ)句
1.在我們實(shí)際生活中經(jīng)常會(huì)把同一件事情重復(fù)做好幾次。例如:潮汕人喜歡喝茶,只要在喝茶的過(guò)程,沖泡的行為;做俯臥撐的起伏的動(dòng)作等。在java中有一種特殊的語(yǔ)句叫做循環(huán)語(yǔ)句,它可以實(shí)現(xiàn)將一段代碼重復(fù)執(zhí)行。例如求1~10的整數(shù)和。
2.循環(huán)語(yǔ)句分為while循環(huán)語(yǔ)句、do-while循環(huán)語(yǔ)句、for循環(huán)語(yǔ)句三種。
二、while循環(huán)語(yǔ)句
1.while循環(huán)語(yǔ)句是根據(jù)條件判斷來(lái)決定是否執(zhí)行大括號(hào)({})的執(zhí)行語(yǔ)句。while語(yǔ)句會(huì)反復(fù)地進(jìn)行條件判斷,只要條件成立,大括號(hào)({})的語(yǔ)句就會(huì)被執(zhí)行,直到條件不成立,while循環(huán)結(jié)束。
2.while循環(huán)語(yǔ)句的語(yǔ)法語(yǔ)句
[初始化語(yǔ)句]
while( 條件 ){
s1:執(zhí)行語(yǔ)句
}
在語(yǔ)法結(jié)構(gòu)中{}中的執(zhí)行語(yǔ)句稱(chēng)為循環(huán)體,循環(huán)體是否被執(zhí)行就看條件滿(mǎn)不滿(mǎn)足。
3.while循環(huán)的流程圖

當(dāng)條件為true時(shí),循環(huán)體就會(huì)執(zhí)行,循環(huán)體執(zhí)行完之后會(huì)繼續(xù)判斷條件,是否循環(huán)條件為true,如果為true繼續(xù)執(zhí)行循環(huán)體,直到循環(huán)條件為false,while循環(huán)就結(jié)束。
4.使用while循環(huán)語(yǔ)句求1-10整數(shù)的和
int i = 1, sum = 0;
while(i <= 10){
sum += i;
i++;
}
System.out.println("1-10的整數(shù)和值為" + sum);
System.out.println("1-10的整數(shù)和值為" + sum);
輸出的結(jié)果是:
1-10的整數(shù)和值為55
首先是定義int類(lèi)型變量i和sum,i=1,sum=0是用來(lái)保存計(jì)算1-10整數(shù)和的結(jié)果。從i等于1,只要i小于等于10,就會(huì)執(zhí)行循環(huán)體的語(yǔ)句,sum+=i相當(dāng)于sum=sum+i,i的值自增,直到不滿(mǎn)足條件,while循環(huán)結(jié)束輸出1-10整數(shù)的和的結(jié)果。
三、do-while循環(huán)語(yǔ)句
1.do-while循環(huán)語(yǔ)句和while循環(huán)類(lèi)似,語(yǔ)法語(yǔ)句
do{
s1:執(zhí)行語(yǔ)句
} while( 條件 );
在上面這個(gè)語(yǔ)法語(yǔ)句中,do后面大括號(hào)({})執(zhí)行語(yǔ)句是循環(huán)體,do-while循環(huán)的條件放在循環(huán)體的后面。這說(shuō)明先執(zhí)行循環(huán)體,再判斷條件,條件滿(mǎn)足繼續(xù)執(zhí)行循環(huán)體,否則退出循環(huán),執(zhí)行do-while循環(huán)后面的語(yǔ)句。因此,在do-while循環(huán)中,循環(huán)體被執(zhí)行的次數(shù)是1或若干次。
2.do-while循環(huán)語(yǔ)句流程圖

3.使用do-while循環(huán)求1~10的整數(shù)和
int i = 1, sum = 0;
do{
sum += i;
i++;
}while(i <= 10);
System.out.println("1-10的整數(shù)和值為" + sum);
輸出的結(jié)果是:
1-10的整數(shù)和值為55
首先定義了int類(lèi)型變量i和sum,i=1,sum是用來(lái)保存1-10的整數(shù)和的值,先執(zhí)行循環(huán)體,sum+=i相當(dāng)sum=sum+i的值,sum的值為1,i自增,然后看i<=10的條件是否滿(mǎn)足,如果滿(mǎn)足就繼續(xù)執(zhí)行,不滿(mǎn)足就退出這個(gè)do-while循環(huán),輸出1-10的正數(shù)和值為55。
四、break使用
1.在循環(huán)語(yǔ)句中,使用break語(yǔ)句可以直接跳出循環(huán),忽略循環(huán)體的任何其他語(yǔ)句和循環(huán)條件測(cè)試。換句話(huà)說(shuō),循環(huán)中遇到break語(yǔ)句時(shí),循環(huán)終止,程序轉(zhuǎn)到循環(huán)后面的語(yǔ)句處繼續(xù)執(zhí)行。
2.break使用例子如下所示:
int i=0;
while(i<10){
i++;
if(i==5){
break;
}
System.out.print(i);
}
輸出的結(jié)果是:1234
可以看到定義int類(lèi)型變量i為0,因?yàn)閕=0,i<10所以滿(mǎn)足條件執(zhí)行循環(huán)體,然后i自增,此時(shí)i=1,1<10滿(mǎn)足條件,繼續(xù)執(zhí)行循環(huán)體,i=2,2<10滿(mǎn)足條件,再繼續(xù)執(zhí)行到i=5退出while循環(huán)。
五、總結(jié)
本文介紹了循環(huán)結(jié)構(gòu)語(yǔ)句while和do-while循環(huán)、break的使用,while循環(huán)語(yǔ)句通過(guò)流程圖和語(yǔ)法語(yǔ)句結(jié)合一個(gè)求1~10的整數(shù)和的例子來(lái)幫助大家理解while循環(huán)的用法。do-while循環(huán)和while循環(huán)類(lèi)似,do-while是先執(zhí)行循環(huán)體,再判斷條件,條件滿(mǎn)足繼續(xù)執(zhí)行循環(huán)體,否則退出循環(huán),執(zhí)行do-while循環(huán)后面的語(yǔ)句。簡(jiǎn)單介紹break的使用,break是跳出這個(gè)循環(huán)體。
- 詳解Java中的do...while循環(huán)語(yǔ)句的使用方法
- Java中for、while、do while三種循環(huán)語(yǔ)句的區(qū)別介紹
- Java之while與do-while循環(huán)的用法詳解
- Java While循環(huán) do-while循環(huán)用法
- Java流程控制之循環(huán)結(jié)構(gòu)while、do...while
- Java零基礎(chǔ)教程之do-while循環(huán)語(yǔ)句實(shí)例
- Java中的do while循環(huán)控制語(yǔ)句基本使用
- Java中do-while循環(huán)的使用方法及注意事項(xiàng)詳解
相關(guān)文章
spring boot整合mybatis使用c3p0數(shù)據(jù)源連接mysql
這篇文章主要為大家詳細(xì)介紹了spring boot整合mybatis使用c3p0數(shù)據(jù)源連接mysql,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03
Java多線(xiàn)程實(shí)現(xiàn)的兩種方式
本文主要介紹了Java多線(xiàn)程實(shí)現(xiàn)的兩種方式:繼承Thread類(lèi)、實(shí)現(xiàn)Runnable接口。具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-01-01
基于JavaMail的Java實(shí)現(xiàn)簡(jiǎn)單郵件發(fā)送功能
這篇文章主要為大家詳細(xì)介紹了基于JavaMail的Java實(shí)現(xiàn)簡(jiǎn)單郵件發(fā)送功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09
SpringBoot注解@ConditionalOnClass底層源碼實(shí)現(xiàn)
這篇文章主要為大家介紹了SpringBoot注解@ConditionalOnClass底層源碼實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
如何解決IDEA使用Tomcat控制臺(tái)中文出現(xiàn)亂碼問(wèn)題
這篇文章主要介紹了如何解決IDEA使用Tomcat控制臺(tái)中文出現(xiàn)亂碼問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09
Java獲取當(dāng)前系統(tǒng)事件System.currentTimeMillis()方法
下面小編就為大家?guī)?lái)一篇Java獲取當(dāng)前系統(tǒng)事件System.currentTimeMillis()方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06
Windows下gradle的安裝與配置的超詳細(xì)教程
這篇文章主要介紹了Windows下gradle的安裝與配置,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09
springboot整合x(chóng)xl-job的示例代碼
這篇文章主要介紹了springboot整合x(chóng)xl-job的示例代碼,主要分為三大模塊,分別是調(diào)度中心、執(zhí)行器和配置定時(shí)任務(wù)的過(guò)程,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-06-06

