小康陪你学JAVA--------三大循环之Do-while循环
? ? ? do…while循環(huán)也是用于未知循環(huán)執(zhí)行次數(shù)的時(shí)候,而while循環(huán)及do…while循環(huán)最大不同就是進(jìn)入while循環(huán)前,while語句會先測試判斷條件的真假,再決定是否執(zhí)行循環(huán)主體,而do…while循環(huán)則是“先做再說”,每次都是先執(zhí)行一次循環(huán)主體,然后再測試判斷條件的真假,所以無論循環(huán)成立的條件是什么,使用do…while循環(huán)時(shí),至少都會執(zhí)行一次循環(huán)主體。do…while循環(huán)的格式如下:
? ? ? 當(dāng)循環(huán)主體只有一個(gè)語句時(shí),可以將左、右大括號去除。第一次進(jìn)入do..while循環(huán)語句時(shí),不管判斷條件(它可以是任何表達(dá)式)是否符合執(zhí)行循環(huán)的條件,都會直接執(zhí)行循環(huán)主體。循環(huán)主體執(zhí)行完畢,才開始測試判斷條件的值,如果判斷條件的值為真,則再次執(zhí)行循環(huán)主體,如此重復(fù)測試判斷條件、執(zhí)行循環(huán)主體,直到判斷條件的值為假,才會跳離do…while循環(huán)。下面列出了do…while循環(huán)執(zhí)行的流程:
1. 進(jìn)入do...whle循環(huán)前,要先為循環(huán)控制變量(或表達(dá)式)賦起始值。
2. 直接執(zhí)行循環(huán)主體,循環(huán)主體執(zhí)行完畢,才開始根據(jù)判斷條件的內(nèi)容決定是否繼續(xù)執(zhí)行循環(huán):條件判斷值為真(True)時(shí),繼續(xù)執(zhí)行循環(huán)主體;條件判斷值為假(False)時(shí),則跳出循環(huán),執(zhí)行其他語句。
3. 執(zhí)行完循環(huán)主體內(nèi)的語句后,重新為循環(huán)控制變量(或表達(dá)式)賦值(增加或減少),由于do…while循環(huán)和while循環(huán)一樣,不會自動更改循環(huán)控制變量(或表達(dá)式)的內(nèi)容,所以在do…while循環(huán)中賦值循環(huán)控制變量的工作要由自己來做,
再回到步驟2重新判斷是否繼續(xù)執(zhí)行循環(huán)。
01 // 以下程序說明了do...while循環(huán)的使用
02? public class TestJava3_29
03 {
04??? public static void main(String[] args)
05? {
06?????? int i = 1 ,sum = 0 ;
07 // do.while是先執(zhí)行一次,再進(jìn)行判斷。即,循環(huán)體至少會被執(zhí)行一次
08?? do
09?? {
10 sum += i ; // 累加計(jì)算
11?? i++ ;
12?? }while(i<=10);
13?? System.out.println("1 + 2 + ...+ 10 = "+sum); // 輸出結(jié)果
14? }
15 }
輸出結(jié)果:
1 + 2 + ...+ 10 = 55
? ? ? 首先,聲明程序中要使用的變量i (循環(huán)記數(shù)及累加操作數(shù))及sum(累加的總和),并將sum設(shè)初值為0;由于要計(jì)算1+2+…+10,因此在第一次進(jìn)入循環(huán)的時(shí)候,將i的值設(shè)為1,接著判斷i是否小于等于10,如果i小于等于10,則計(jì)算sum+i的值后再指定給sum存放。i的值已經(jīng)不滿足循環(huán)條件時(shí),i即會跳出循環(huán),表示累加的操作已經(jīng)完成,再輸出sum的值,程序即結(jié)束運(yùn)行。
程序說明:
1、 第08~12行利用do…while循環(huán)計(jì)算1~10的數(shù)累加
2、 第13行,輸出1~10的數(shù)的累加結(jié)果:1 + 2 + ...+ 10 = 55 ??do..while循環(huán)不管條件是什么,都是先做再說,因此循環(huán)的主體最少會被執(zhí)行一次。在日常生活中,如果能夠多加注意,并不難找到do…while循環(huán)的影子!舉例來說,在利用提款機(jī)提款前,會先進(jìn)入輸入密碼的畫面,讓使用者輸入三次密碼,如果皆輸入錯(cuò)誤,即會將銀行卡吞掉,其程序的流程就是利用do…while循環(huán)設(shè)計(jì)而成的。
轉(zhuǎn)載于:https://www.cnblogs.com/kangshow/p/3902348.html
總結(jié)
以上是生活随笔為你收集整理的小康陪你学JAVA--------三大循环之Do-while循环的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基本select语句的生命周期
- 下一篇: poj 1988