最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java之while與do-while循環(huán)的用法詳解

 更新時間:2023年05月18日 09:41:25   作者:一一哥Sun  
在上一篇文章中,給大家講解了循環(huán)的概念,并重點給大家講解了for循環(huán)的使用。但在Java中,除了for循環(huán)之外,還有while、do-while、foreach等循環(huán)形式。這篇文章給大家講解while循環(huán)的使用

一. while循環(huán)

1. 基本語法

while循環(huán)的基本語法如下所示:

while(循環(huán)條件){ 
    //循環(huán)體 
}

while循環(huán)屬于是一種 ”當型“的循環(huán)結(jié)構(gòu),當循環(huán)條件為true,循環(huán)體就會執(zhí)行,不滿足條件,循環(huán)體一次也不會執(zhí)行。所以在while循環(huán)中,當執(zhí)行到一定的程度后,循環(huán)條件要變成false,否則就會變成”死循環(huán)“。死循環(huán)會導致CPU被100%占用,用戶會感覺電腦運行緩慢,所以我們要避免編寫死循環(huán)代碼。另外如果循環(huán)條件的邏輯寫得有問題,也可能會造成意料之外的結(jié)果。

大家還要注意,在while循環(huán)中,也是可以進行嵌套其他循環(huán)的!

2. 執(zhí)行順序

根據(jù)while循環(huán)的基本語法,給大家梳理一下它的執(zhí)行順序:

如果while循環(huán)里的條件為true,則執(zhí)行循環(huán)體;

循環(huán)體執(zhí)行完畢后,會再次判斷循環(huán)條件......;

直到循環(huán)條件為false,就結(jié)束循環(huán)。

3. 代碼案例

接下來我們就通過幾個案例來學習while循環(huán)的使用。

3.1 案例一

需求:用while循環(huán)打印100遍“跟壹壹哥學Java”

/**
 * @author
 */
public class Demo05 {
    public static void main(String[] args) {
	// while循環(huán)
	//打印100遍“跟壹壹哥學Java”
	int i = 0;
	while (i < 100) {
            System.out.println("跟壹壹哥學Java"+i);
            //注意要更改i的值,否則條件就用于為真,這就成了死循環(huán)了
            i++;
	}
    }
}

3.2 案例二

需求:用while循環(huán)計算1-100的累加和

/**
 * @author
 */
public class Demo05 {
    public static void main(String[] args) {
	// while循環(huán)
	//計算1~100的和
	int j = 1;
	int sum = 0;
	while(j < 101){            
            sum = sum + j;
            j++;
	}
	System.out.println(sum);
    }
}

3.3 擴展案例

需求:計算一個數(shù)是幾位數(shù)?

實現(xiàn)思路:如果我們要想實現(xiàn)這個需求,可以將該數(shù)循環(huán)除以10,并用一個數(shù)字記錄一共運算了幾次。

/**
 * @author
 */
public class Demo06 {
    public static void main(String[] args) {
	// while循環(huán)
	// 計算一個數(shù)是幾位數(shù)? 實現(xiàn)思路:將該數(shù)循環(huán)除以10,記錄運算了幾次
	int num = 12345;
	int temp = num;
	if (num == 0) {
            System.out.println(num + "是1位數(shù)");
	} else {
            // 定義一個變量,用于保存循環(huán)的次數(shù)
            int count = 0;
            while (num != 0) {
		// 將這個數(shù)循環(huán)除以10
		num = num / 10;
		// 每次循環(huán)次數(shù)+1
		count++;
            }
            System.out.println(temp + "是" + count + "位數(shù)");
	}
    }
}

二. do-while循環(huán)

對while循環(huán)而言,如果不滿足條件,就不能進入循環(huán)。但有時我們需要即使不滿足條件,也要至少執(zhí)行一次,這時就可以考慮使用do-while循環(huán)了。do…while循環(huán)和while循環(huán)功能相似,不同的是,do…while循環(huán)至少會執(zhí)行一次。

1. 基本語法

do-while循環(huán)的基本語法如下:

do{ 
   //循環(huán)體 
}while(循環(huán)條件);

do-while循環(huán)屬于是一種 ”直到型“的循環(huán)結(jié)構(gòu)。因為循環(huán)條件是在循環(huán)體的后面,所以循環(huán)體在判斷循環(huán)條件之前已經(jīng)執(zhí)行一次了。如果循環(huán)條件的值為true,則循環(huán)體會一直執(zhí)行,直到循環(huán)條件的值為false,就結(jié)束循環(huán)。

大家注意:在do-while循環(huán)中,也是可以進行嵌套其他循環(huán)的!

2. 執(zhí)行順序

根據(jù)do-while循環(huán)的基本語法,給大家梳理一下它的執(zhí)行順序:

先執(zhí)行一次循環(huán)體;

如果while循環(huán)里的條件為true,則繼續(xù)執(zhí)行循環(huán)體;

當循環(huán)體執(zhí)行完畢后,會再次判斷循環(huán)條件......;

直到循環(huán)條件為false,就結(jié)束循環(huán)。

3. 代碼案例

3.1 案例一

需求:用do-while循環(huán)打印100遍"跟一一哥學編程"。

/**
 * @author
 */
public class Demo06 {
    public static void main(String[] args) {
	// do-while循環(huán)
	// 案例:打印100遍"跟一一哥學編程"
	int i = 1;
	do {
            //循環(huán)體至少會執(zhí)行一次
            System.out.println("跟一一哥學編程"+i);
            //更改i變量的值
            i++;
	} while (i <= 100);
    }
}

3.2 案例二

需求:學生根據(jù)老師的評語,決定是否繼續(xù)敲代碼,直到測評為ok,就結(jié)束。

/**
 * @author
 */
public class Demo06 {
    public static void main(String[] args) {
	// do-while循環(huán)
	//案例:學生根據(jù)老師的評語,是否繼續(xù)敲代碼,直到測評結(jié)果為ok才結(jié)束。
	Scanner sc = new Scanner(System.in);
	String result;
	do{
            System.out.println("敲代碼ing...你看我的代碼怎么樣???");
            System.out.println("評價:");   
            //獲取屏幕上輸入的文本內(nèi)容
            result = sc.next();            
	}while(!result.equals("ok"));
    }
}

三. 結(jié)語

至此,就把while和do-while兩種循環(huán)的使用給大家講解完畢了,現(xiàn)在你學會了嗎?那么兩者之間有什么區(qū)別呢?

1. while與do-while的區(qū)別

這里把while與do-while循環(huán)的區(qū)別,給大家簡單總結(jié)一下:

  • 語法格式的區(qū)別:

  • 執(zhí)行次序不同;
  • 當初始循環(huán)條件不滿足時,while循環(huán)一次都不會執(zhí)行;do-while循環(huán)至少會執(zhí)行一次。

2. 三種循環(huán)的對比

我們現(xiàn)在已經(jīng)把for、while、do-while循環(huán)都學完了,它們?nèi)咧g又有哪些區(qū)別呢?

2.1 從執(zhí)行順序來看

  • for、while:先判斷,后執(zhí)行;
  • do-while:先執(zhí)行,后判斷;

2.2 從適用場景來看

  • 當循環(huán)次數(shù)確定時,一般使用for循環(huán);
  • 循環(huán)次數(shù)不確定時,一般使用while或do-while循環(huán)。

以上就是Java之while與do-while循環(huán)的用法詳解的詳細內(nèi)容,更多關(guān)于Java while與do-while循環(huán)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Spring Boot異常處理問題小結(jié)

    Spring Boot異常處理問題小結(jié)

    在 Spring Boot 中,異常處理是一個重要的部分,可以允許開發(fā)者優(yōu)雅地處理應(yīng)用程序中可能發(fā)生的錯誤和異常,這篇文章主要介紹了Spring Boot異常處理問題小結(jié),需要的朋友可以參考下
    2024-05-05
  • Java中字符串與日期轉(zhuǎn)換常見方法總結(jié)

    Java中字符串與日期轉(zhuǎn)換常見方法總結(jié)

    這篇文章主要給大家介紹了關(guān)于Java中字符串與日期轉(zhuǎn)換常見方法的相關(guān)資料,在Java編程中經(jīng)常需要將字符串表示的日期轉(zhuǎn)換為日期對象進行處理,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • Java synchronized關(guān)鍵字使用方式及特性解析

    Java synchronized關(guān)鍵字使用方式及特性解析

    這篇文章主要介紹了Java synchronized關(guān)鍵字使用方式及特性解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Java 中EasyExcel的使用方式

    Java 中EasyExcel的使用方式

    這篇文章主要介紹了Java 中EasyExcel的使用方式,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-08-08
  • Java獲取項目路徑方式System.getProperty(“user.dir“)

    Java獲取項目路徑方式System.getProperty(“user.dir“)

    這篇文章主要介紹了Java獲取項目路徑方式System.getProperty(“user.dir“),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • java讀取文件顯示進度條的實現(xiàn)方法

    java讀取文件顯示進度條的實現(xiàn)方法

    當讀取一個大文件時,一時半會兒無法看到讀取結(jié)果,就需要顯示一個進度條,是程序員明白已經(jīng)讀了多少文件,可以估算讀取還需要多少時間,下面的代碼可以實現(xiàn)這個功能
    2014-01-01
  • Spring Boot 搭建 ELK正確看日志的配置流程

    Spring Boot 搭建 ELK正確看日志的配置流程

    這篇文章主要介紹了Spring Boot 搭建 ELK正確看日志的配置流程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 淺談Java序列化和hessian序列化的差異

    淺談Java序列化和hessian序列化的差異

    這篇文章主要通過對二者簡單的實現(xiàn)方式的對比,介紹了Java序列化和hessian序列化的差異,具有一定參考價值,需要的朋友可以了解下。
    2017-09-09
  • Java設(shè)計實現(xiàn)一個針對各種類型的緩存

    Java設(shè)計實現(xiàn)一個針對各種類型的緩存

    這篇文章主要為大家詳細介紹了Java如何設(shè)計實現(xiàn)一個針對各種類型的緩存,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以了解一下
    2023-11-11
  • Java基于redis實現(xiàn)分布式鎖代碼實例

    Java基于redis實現(xiàn)分布式鎖代碼實例

    這篇文章主要介紹了Java基于redis實現(xiàn)分布式鎖代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04

最新評論

龙川县| 衡南县| 余干县| 伊宁市| 灯塔市| 文水县| 建昌县| 新闻| 榆中县| 新源县| 福贡县| 措美县| 巴南区| 永州市| 洛浦县| 老河口市| 海阳市| 南涧| 沧源| 麻江县| 祁阳县| 霍邱县| 故城县| 韶山市| 逊克县| 安龙县| 铁力市| 天全县| 格尔木市| 黔东| 利津县| 望都县| 鹤庆县| 东方市| 孟村| 上林县| 昌宁县| SHOW| 盖州市| 岑溪市| 永顺县|