跟我學java編程—Java while循環語句

2021-01-08 米粒教育

while循環的一般語法是:

while( 表達式 )

語句;

其中,表達式是循環條件,語句為循環體。while語句的語義是:計算表達式的值,當值為真(非0)時,執行循環體語句,一旦條件為假,就停止執行循環體。如果條件在開始時就為假,則不執行循環體語句直接退出循環。

循環體語句可以是空語句、單條語句或語句集。如果是語句集,則要用「{」和「}」把它們括起來。條件可以是任何表達式。

示例1:實現輸出從1—10分別乘以10所得的乘法表。

在D盤Java目錄下,新建「LoopSample1.java」文件。用記事本打開「LoopSample1.java」文件,輸入以下代碼:

代碼結構分析

程序功能主要是演示while循環語句的使用。

程序聲明了兩個int類型的變量num和result,分別用來存儲數字和乘積。然後,將num初始化為1,因為打算在while循環中從1開始執行乘法運算,求出1—10的數字與10的乘積,因此將while循環的條件編寫為num<=10。這樣確保了只要num小於等於10,就執行while循環;而當此條件變為假時,即num的值達到11時,就結束此循環。循環體中的第一個語句用num乘以10,將計算結果保存在變量result中。第二個語句輸出乘法表,循環體中的最後一個語句將num的值遞增1,來修改num的值。此處使用了單目自增運算符++,也可以編寫為num=num+1,來替代num++。

程序中的num++非常重要,這條語句通過修改num的值來修改循環條件,直到num的值等於11,循環條件為假時退出循環。也就是說,循環條件中的變量,需要在循環中重新賦值,以逐漸改變循環條件的值,直到循環條件為假;否則循環將永遠不會停止,這種循環稱為「死循環」或者「無限循環」。

編譯「LoopSample1.java」文件,在命令行窗口輸入「javac LoopSample1.java」並執行命令,編譯通過後,在命令行窗口輸入「java LoopSample1」運行Java程序,命令行窗口顯示如下信息:

圖 8-2 示例1乘法表輸出結果

示例2:無限循環

在D盤Java目錄下,新建「LoopSample2.java」文件。用記事本打開「LoopSample2.java」文件,輸入以下代碼:

代碼結構分析

程序功能主要是演示在while循環語句中,由於缺乏改變條件的語句而導致出現無限循環的問題。

程序中while循環體內沒有修改循環變量count的值,導致循環條件一直為真,造成了無限循環。

編譯「LoopSample2.java」文件,在命令行窗口輸入「javac LoopSample2.java」並執行命令,編譯通過後,在命令行窗口輸入「java LoopSample2」運行Java程序,命令行窗口顯示如下信息:

圖 8-3 示例2無限循環輸出結果

另外,假如編寫了以下while循環語句:

while( 1 )

其中,條件僅僅是一個數值常量1,由於在Java語言中,規定所有的非0值都表示真。因此,它實際上相當於while(true),而且這個循環條件沒有辦法在循環體內修改,這樣會導致無限循環。可以使用break語句強行跳出循環,這個語句將在後面介紹。

如果循環條件中包含多個條件表達式的組合,這時需要檢查整個條件表達式的值。如果整個條件表達式的值為假,即使其中某個子條件表達式為真,循環也會結束。

示例3:編寫一個程序,要求從攝氏度0度到250度,每隔20度為一項,輸出一個攝氏溫度與華氏溫度的對照表,同時要求對照表中的條目不超過10條。

在D盤Java目錄下,新建「LoopSample3.java」文件。用記事本打開「LoopSample3.java」文件,輸入以下代碼:

代碼結構分析

程序功能主要是演示while循環語句的使用。

程序中的循環將執行10次,雖然溫度只顯示到180,但是由於對照表中條目已經滿10條,即count<10變為假,從而導致循環結束。

編譯「LoopSample3.java」文件,在命令行窗口輸入「javac LoopSample3.java」並執行命令,編譯通過後,在命令行窗口輸入「java LoopSample3」運行Java程序,命令行窗口顯示如下信息:

圖 8-4 示例3輸出結果

示例4:編寫一個程序,用於從控制臺接收字符串輸入,並將結果輸出到屏幕上,當用戶輸入「quit」時,程序結束。

在D盤Java目錄下,新建「LoopSample4.java」文件。用記事本打開「LoopSample4.java」文件,輸入以下代碼:

代碼結構分析

程序功能主要是演示while循環語句的使用。

程序中循環變量str是通過sc.next()獲取用戶輸入來修改的,用戶每次輸入字符串相當於為str重新賦值,直到用戶輸入quit字符串時,循環條件變為假,程序退出循環。

編譯「LoopSample4.java」文件,在命令行窗口輸入「javac LoopSample4.java」並執行命令,編譯通過後,在命令行窗口輸入「java LoopSample4」運行Java程序,命令行窗口顯示如下信息:

圖 8-5 示例4輸出結果

循環結構是程序中一種很重要的結構,其特點是,在給定條件成立時,重複執行某程序段,直到條件不成立為止。給定的條件為循環條件,反覆執行的程序段稱為循環體,循環條件必須要在循環體中改變,否則可能會出現無限循環的結果。

編寫一個程序,計算1到100之間的整數和。

相關焦點

  • 跟我學java編程—深入理解do-while循環語句的用法
    do-while循環與while循環的不同在於:它先執行循環體中的語句,然後再判斷條件是否為真。如果為真則繼續循環,如果為假,則終止循環。因此,do-while循環至少要執行一次循環語句。同樣當有許多語句參加循環時,要用「{」和「}」把它們括起來。
  • 跟我學java編程—Java循環結構基本介紹
    前面一章討論了編程中進行判斷的各種方法,然而有些問題僅僅通過判斷還不能解決。某些情況中,為解決一個問題常常需要重複執行一個或多個操作。例如,要求輸出從1—5分別乘以10所得的乘法表,用以前學過的知識編制的程序如示例1所示:示例1:乘法表在D盤Java目錄下,新建「MultipSample.java」文件。用記事本打開「MultipSample.java」文件,輸入以下代碼:代碼結構分析程序編寫了五條語句計算乘積,再編寫另外五條語句顯示這些乘積。
  • 跟我學java編程—深入理解for語句的嵌套循環
    嵌套循環時,必須將被嵌套的循環語句完整地包含在外層循環的循環體內,下面給出一些循環嵌套的示例。示例1:用「*」輸出一個菱形圖案,圖案如下: 在D盤Java目錄下,新建「ForSample1.java」文件。
  • 跟我學java編程—Java跳轉語句—break語句
    break語句通常用在前面介紹過的switch語句及循環語句中。當break語句用於switch語句時,可使程序跳出switch語句而執行switch語句之後的語句;當break語句用於while、do-while、for循環語句時,可使程序終止循環而執行循環後面的語句。break語句實際上就是為了使人能方便地描述從循環執行中退出的動作。
  • 跟我學java編程—Java跳轉語句—continue語句
    continue語句只能用在循環裡。continue語句的作用是跳過循環體中剩餘的語句而準備執行下一次循環。對於while和do-while循環,continue執行之後的動作是條件判斷;對於for循環,隨後的動作是變量更新。注意break語句和continue語句的差別。
  • 跟我學java編程—深入理解while嵌套
    就像if語句可以嵌套一樣,一個循環也可以嵌套在另一個循環中,一個循環中含有另一個循環就稱為嵌套循環。嵌套循環的工作原理如下:首先外循環的第一輪觸發內循環,然後內循環將一直執行到完成為止,然後,外循環的第二輪再次觸發內循環,此過程不斷重複直到外循環結束,使用嵌套循環時,只有在內循環完全結束後,外循環才會執行下一趟循環,一個while循環可以嵌套在另一個while循環中,示例1演示了嵌套while循環的用法。示例1:用*輸出一個直角三角形圖案。
  • 跟光磊學Java-Java程序流程控制之循環結構
    java提供了三種循環語句,分別是while,do/while和for循環,原則上這三種循環都是可以相互替換的,都可以實現重複執行某段代碼。>while循環語句的執行流程當循環條件判斷的結果為true,則會循環執行循環體的代碼塊,然後再判斷循環條件,如果循環條件判斷結果為true,則會再次循環執行循環體的代碼塊,直到遇到了break關鍵字或者是循環條件判斷的結果為false才會結束while循環。
  • Java循環語句之for循環與while循環
    各位小夥伴們大家好,這次小編要介紹的是,Java循環語句之for循環與while循環。首先,小編來介紹一下什麼是循環語句。循環語句可以在滿足循環條件的情況下,反覆執行某一段代碼,這段被重複執行的代碼被稱為循環語句,當反覆執行這個循環時,需要在合適的時候把循環判斷修改為false結束循環。循環語句主要有for循環,while循環,do…while循環。這次,小編要介紹的是for循環與while循環。首先,小編要介紹的是for循環的格式。
  • 一文掌握java三循環:while\do while\for
    概述今天主要介紹JAVA中的基礎循環:while、do...while及for三類循環,常用的還是for循環和while循環。一、java中的while循環1、語法先判斷布爾表達式,如果為true就會執行循環體中的語句,然後再判斷布爾表達式,如果為true就執行循環體中的語句,一直到布爾表達式為false,然後循環結束。
  • 跟我學java編程—Java的格式化輸出
    用記事本打開「PrintfSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示println方法和printf的輸出雙精度浮點數的區別,println方法輸出雙精度浮點數時,不能對小數的有效位數控制輸出,printf方法可以控制小數有效位數的輸出。程序增加了塊注釋語句,用於方法、語句以及變量的具體說明,提高程序代碼的可讀性和可維護性。
  • 跟我學java編程—Java邏輯運算符
    例如下面語句:int a = 10;int b = 20;boolean bJudge = !( a> b);聲明了變量a、變量b,變量a和變量分別賦值為10和20。第三條語句邏輯非運算符「!」用於取反條件表達式a> b的結果,如果a> b為真,取反後為false,如果a> b為假,取反後為true。
  • 跟我學java編程—Java顯示異常信息與異常分類
    如何顯示異常信息前面介紹了各種異常類及異常語句的用法。在實際編程過程中,還需要顯示導致異常出現的信息,方便程式設計師根據給出的異常信息查找程序錯誤。異常類提供了輸出異常信息的兩個方法:getMessage方法和printStackTrace方法。getMessage方法用於獲取異常的詳細消息字符串。
  • 零基礎學編程python第十課,for……in循環語句與while循環語句
    而計算機機器人,就可以通過【循環】,一遍又一遍不厭其煩的向客戶介紹產品,計算機又不怕累。現在,是不是感覺」循環」不一樣了。什麼計算機就特別擅長做重複性工作呢? 並且是」擅長、速度快、不怕累」。究其原理, 就是因為代碼中的【循環語句】,讓計算機能夠重複、自動地執行命令。Python江湖裡,提供了兩種循環語句, for…in循環語句與while循環語句。
  • 跟我學java編程—Java布爾類型
    這裡面有個字符判斷的過程,判斷的結果影響後面程序的執行,因此程序需要把判斷結果存儲到一個變量中,用於控制程序執行不同的分支語句,這個變量的類型就是布爾類型。布爾類型是表示邏輯狀態的類型。java語言通過關鍵字boolean來定義布爾類型變量,只有true和false兩個值,分別代表布爾邏輯中的「真」和「假」。
  • Shell腳本編程2 for循環/while循環
    For循環和java中的for是一樣的都是循環與其他程式語言類似,Shell支持for循環。commandNdone當變量值在列表裡,for循環即執行一次所有命令,使用變量名獲取列表中的當前取值。命令可為任何有效的shell命令和語句。in列表可以包含字符串和文件名。
  • 跟我學java編程—Java嵌套if
    嵌套if結構的語法如下:在編寫嵌套if結構時,有時會引發一些疑問,下面是一個例子:按條件語句的語法形式,上面的例子似乎有兩種可能的解釋,第一種理解:外層的if是一個沒有else部分的條件語句,最後的else部分屬於內層的if語句;第二種理解:內層if是一個不帶else部分的條件語句,最後的else屬於外層的if條件語句。
  • 跟我學java編程—Java數據結構一維數組的應用
    語句a = new int[4]為數組a分配了4個元素,這4個元素分別是a[0]、a[1]、a[2]、a[3],它們的值都為0。編譯「ArraySample1.java」文件,在命令行窗口輸入「javac ArraySample1.java」並執行命令,編譯通過後,在命令行窗口輸入「java ArraySample1」運行Java程序,命令行窗口顯示如下信息:
  • 跟我學java編程—Java的Scanner類
    用記事本打開「ScannerInitSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示Scanner如何聲明及初始化。語句「import java.util.*;」,用於導入包含Scanner的類庫,Scanner包含在Java 核心類庫util中,要使用Scanner類,必須導入java.util庫,類庫導入關鍵字為import。
  • 跟我學java編程—Java的標準輸出
    示例1:用print輸出數據在D盤Java目錄下,新建「PrintSample.java」文件。用記事本打開「PrintSample.java」文件,輸入以下代碼:代碼結構分析:程序主要功能是調用System.out.print方法,完成不同類型數據的輸出,查看輸出結果。
  • 跟我學java編程—Java類方法的調用機制
    圖 11-12 調用add方法上例的Java程序從main()方法開始執行,main()方法是程序的入口,當程序從main()方法開始運行後,執行到addition.add(20,102)語句時,程序會跳轉到add()