天天看點

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

        繼續接着Java基礎文法來:JavaSE入門學習5:Java基礎文法(一)和JavaSE入門學習6:Java基礎文法(二)。

        語句 

       Java常用的3種循環:while,do...while,for。

       (5)Java循環語句之while

       文法:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       執行過程:

       1)判斷while後面的條件是否成立(true/false)。

       2)當條件成立時,執行循環内的操作代碼 ,然後重複執行1),2),直到循環條件不成立為止。

       特點:先判斷,後執行。

       如:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       (6)Java循環語句之do...while

       do...while循環與while循環文法有些類似,但執行過程差别比較大。

       文法:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       執行過程:

       1)先執行一遍循環操作,然後判斷循環條件是否成立。

       2)如果條件成立,繼續執行1),2),直到循環條件不成立為止。

       特點: 先執行,後判斷。

       由此可見,do...while 語句保證循環至少被執行一次。這就是和while循環語句的差別。

       例如,依然輸出 1000 遍“我愛慕課網”,使用do...while的實作代碼為:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       (7)Java循環語句之for

       Java 的循環結構中除了while和do...while外,還有for循環,三種循環可以互相替換。

       文法: 

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       執行過程:

       1)執行循環變量初始化部分,設定循環的初始狀态,此部分在整個循環中隻執行一次。

       2)進行循環條件的判斷,如果條件為true,則執行循環體内代碼;如果為false,則直接退出循環。

       3)執行循環變量變化部分,改變循環變量的值,以便進行下一次條件判斷。

       4)依次重新執行2),3),4),直到退出循環

       特點:相比 while 和 do...while 語句結構更加簡潔易讀。

       例如,輸出 1000 遍“我愛慕課網”,使用 for 的實作代碼為:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       需要留心的幾個小細節:

       1)for關鍵字後面括号中的三個表達式必須用";" 隔開,三個表達式都可以省略,但";"不能省略。

       a. 省略“循環變量初始化”,可以在 for 語句之前由指派語句進行變量初始化操作,如:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       b. 省略“循環條件”,可能會造成循環将一直執行下去,也就是我們常說的“死循環”現象,如:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       在程式設計過程中要避免“死循環”的出現,是以,對于上面的代碼可以在循環體中使用break語句強制跳出循環。

       c. 省略“循環變量變化”,可以在循環體中進行循環變量的變化,如:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       2)for 循環變量初始化和循環變量變化部分,可以是使用 “,” 同時初始化或改變多個循環變量的值,如:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       代碼中,初始化變量部分同時對兩個變量i和j賦初值,循環變量變化部分也同時對兩個變量進行變化,運作結果:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

        3)循環條件部分可以使用邏輯運算符組合的表達式,表示複雜判斷條件,但一定注意運算的優先級,如:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       代碼中,必須同時滿足變量i小于10 ,并且i不等于5時才會進行循環,輸出變量i的值。

       (8)Java循環跳轉語句之break語句

        生活中,我們經常會因為某些原因中斷既定的任務安排。在Java中,我們可以使用 break語句退出指定的循環,

直接執行循環後面的代碼。

       例如,使用循環輸出1--10的數值,其中,如果數值大于2 ,并且為3的倍數則停止輸出。

       實作代碼:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       運作結果:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       (9)Java循環跳轉語句之continue語句

       continue語句的作用是跳過循環體中剩餘的語句執行下一次循環。

       例如,列印1--10之間所有的偶數,使用continue語句實作代碼為:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       運作結果:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       (10)Java循環語句之多重循環

       循環體中包含循環語句的結構稱為多重循環。三種循環語句可以自身嵌套,也可以互相嵌套,最常見的就是二重

循環。在二重循環中,外層循環每執行一次,内層循環要執行一圈。

      如下所示:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       例如:使用*列印長方形:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       實作代碼為:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       執行流程:當i = 1時,外層循環條件成立,進入内層循環,開始列印第一行内容。此時,j從1開始,循環8次,内

層循環結束後換行,實作第一行 8個 * 的輸出。接下來傳回外層循環i變為2,準備列印下一行,依此類推,直到完成

長方形的列印。

       那我們再來做一個直角三角形的輸出,如:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       實作代碼:

JavaSE入門學習7:Java基礎文法之語句(下)        語句        基本資料類型轉換

       最後再來補充一下基本資料類型之間的轉換:

       基本資料類型轉換

       1)boolean類型不參與轉換,因為不可以以0或非0的整數代替false和true。這一點和其他的進階程式設計語言不

同,一定要注意。

        2)整型,字元型,浮點型的資料類型在混合運算中互相轉換,轉換時遵循以下的規則:

        A預設轉換

        容量小的類型自動轉換為容量大的資料類型,資料類型按容量大小排序為:

       byte,short,char -- int -- long -- float -- double

        byte,short,char之間不互相轉換,在計算時首先直接轉成int類型參與運算。

        B強制轉換

        容量大的資料類型轉換為容量小的資料類型時,要加上強制轉換符,但可能造成精确度降低或溢出,使用時一定要注意。

       C有多種類型的資料混合運算時,系統首選自動的将所有的資料轉成容量大的那一種資料類型,再進行計算。

       執行個體的話參考JavaSE入門學習5:Java基礎文法(一)中最後面的面試題和思考題。