黑馬程序員----------java基礎知識(3)

                      ----------------------android培訓java培訓、期待與您交流! ----------------------

         今天算是基本上進入java語言的學習了,我們開始使用了一個java開發工具,老師推薦的是EditPius,,在家自己一直用的都是高級記事本,感覺那麼用的還是挺好的,就沒有換,今天主要講了java的判斷結構和循序結構,裏邊包含了if語句,switch語句以及for循環、while循環。


1:順序結構
    自上而下,從左到右依次執行.

2:判斷結構 if語句
    (1)if語句的格式
        A:格式1
            if(條件表達式)
            {
                執行語句;
            }
            
            **執行流程
                如果條件表達式爲true,則執行if控制的語句體.
                如果條件表達式爲false,不執行if控制的語句體.

            **注意:
                ***:無論條件表達式是簡單還是複雜,其結構都是boolean類型的值.
                ***:if條件表達式後不能跟分號.
                    規律:有{}無;    有;無{}
                         {}和;不能同時出現.
                ***:if語句的語句體,如果是一條語句,可以不加大括號.如果是多條語句,必須加大括號;
                    建議:if語句體必須加大括號.

                遇到大括號,縮進一個tab鍵的位置.

        B:格式2
            if(條件表達式)
            {
                執行語句1;
            }
            else
            {
                執行語句2;
            }

            **執行流程:如果條件表達式爲true,則執行執行語句1.
                 如果條件表達式爲false,則執行執行語句2.
            
           其實,條件表達式是if語句的簡寫形式.但是,不是所有的if語句都可以用其改寫.
            
        C:格式3
            if(條件表達式)
            {
                執行語句1;
            }
            else if(條件表達式)
            {
                執行語句2;
            }
            else if(條件表達式)
            {
                執行語句3;
            }
            ...
            else
            {
                執行語句n;
            }
            
            **執行流程:哪個條件表達式滿足,就執行其所控制的語句體.沒有滿足的,執行else.

            **else可以省略嗎:可以.
                但是不建議省略:
                    A:它是第三種格式規定的內容.
                    B:你不可能把所有的情況都考慮到了.
            
            **注意:有if,必須有條件表達式.
                 else後不能有條件表達式.
    (2)if語句的嵌套(次重點)
        if語句裏面的執行語句是if語句.(次重點)
    (3)if語句的應用.
        一年有12個月,4個季度.
        春季 3,4,5
        夏季 6,7,8
        秋季 9,10,11
        冬季 12,1,2
        根據給定的月份,給出對應的季節.
    (4)if語句的應用場景
        A:if語句判斷幾個值.
        B:if語句判斷範圍
        C:if語句用於判斷條件是boolean類型的

3:switch語句
    (1)switch語句格式:
        switch(表達式)
        {
            case 取值1:
                執行語句;
                break;
            case 取值2:
                執行語句;
                break;
            …...
            default:
                執行語句;
                break;
        }

        A:執行流程:根據表達式的值找與其匹配的項,如果有匹配項,則執行該匹配項下面的語句.
             如果沒有匹配項,就會執行default後面的語句.
        
        B:解釋說明
        switch:後面的表達式其實就是答案.
            表達式可以是byte,short,int,char四種類型.
            JDK5以後表達式可以是枚舉.JDK7以後表達式可以是字符串.
        case:後面是選項 是一個具體的常量值.
        break:結束語句.
        default:缺省,默認的意思,相當於if裏面的else.

    (2)注意:
        A:最後的break可以不寫,對程序沒有影響.
        B:中間的break可以不寫嗎?可以.
            但是,如果你不寫,得到的結果有可能不是你想要的.
            一般來說,建議寫上.
        C:switch語句的結束
            1:break
            2:執行到語句的末尾.
        D:case和default的順序可以交換嗎?可以.
            但是,一般不建議交換.
        E:case和default的執行有順序嗎?有
    (3)應用場景
        switch語句的應用場景:
            它只適合判斷幾個值的情況.不適合判斷範圍.

        if和switch都可以判斷幾個值的情況.那麼,遇到此種類型的題目,使用switch語句.
        爲什麼?因爲switch的效率較高.

4:循環語句
    (1)while循環
        格式:
            while(條件表達式)
            {
                執行語句;
            }
            
            執行流程:
            先判斷條件表達式的值,若爲true,則執行其後面的語句,
            然後再次判斷條件並反覆執行,直到條件不成立爲止.
    
            while(true){} 這是一個死循環.

            我們寫循環要注意:
            1:循環條件
            2:循環語句體

        注意:
        while後面不能有分號.
        while如果控制多條語句,不能省略大括號.建議,永遠不省略大括號

    (2)do...while循環
        do
        {
            執行語句;
        }while(條件表達式);

        執行流程:先執行語句,再判斷條件表達式的值,若爲true,再執行語句,否則結束循環。

        與while的區別:
        do...while至少執行一次循環體.
        while有可能不執行循環體.
        
    (3)for循環
        執行流程:
        1:先做初始化表達式.
        2:判斷循環條件表達式,如果爲true,執行循環體.否則,結束循環.
        3:循環體結束後,執行循環後的操作表達式,繼續轉向第2步執行.

        注意:
            初始化表達式:執行一次
            循環條件表達式:執行一次多次
            循環後的操作表達式:零次或多次

        while循環和for循序是等價的.是可以相互轉化的.

        變量的作用範圍是在一對大括號裏面的.

        區別:格式不一樣.
             它們的增量的作用範圍不一樣.
             for循環的增量循環結束後就從內存中消失.
             而while的增量還在內存中存在.

        一個程序用for還是while取決與它的增量在後面是否還會被使用到.
        如果還得繼續使用,用while循環.否則,使用for循環,效率較高.

        用for循環改寫while循環的應用.

    (4)循環的嵌套
        下三角形:內循環的初始化表達式變.與外循環的增量一致.
        上三角形:內循環的循環條件表達式變.與外循環的增量一致.


5:其他流程控制語句
    (1)break,continue
        注意:
        A:這兩個語句離開應用範圍,存在是沒有意義的。
            break:選擇結構和循環結構
            continue:循序結構
        B:這個兩個語句單獨存在下面都不可以有語句,因爲執行不到。
    (2)break:結束當前循環
       continue:結束本次循環.繼續下一次循環.
   
6:變量和語句的應用場景
    (1)什麼時候使用變量?
        當使用的數據是不確定的時候,需要定義變量來存儲數據。
    (2)什麼時候使用if語句?
        當需要判斷的時候,就要使用if。
        if語句的應用場景:
            A:對有限的值進行判斷。 但是一般這個時候推薦使用switch。
            B:對結果是boolean類型的值進行判斷。
            C:對範圍進行判斷。
                **對條件進行一次判斷用if
                **對條件進行多次判斷用循環
    (3)什麼時候使用switch語句?
        對有限的幾個值進行選擇用switch。而且它只能接收byte,short,char,int類型的值。
        其他類型的值如果使用選擇或者判斷,用if。
    (4)什麼時候使用循環語句?
        重複執行同一個操作的使用.
        while:聲明的循環變量在使用後,可以繼續使用。
        for:當循環變量只爲遞增存在時,建議使用for循環。
    (5)break結束當前所在循環,continue結束本次循環,進入下一次循環。
這幾個簡單的問題是老師提的,當時還說很重要,所以就再回顧一下啦,好了,今天就到這裏了。


                                  ----------------------android培訓java培訓、期待與您交流! ----------------------

發佈了31 篇原創文章 · 獲贊 0 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章