Java學習筆記—第六章 流程控制語句

第六章  熟悉Java的流程控制語句

    Java的程序流程控制分爲順序結構選擇結構循環結構跳轉語句

  1. 順序結構:按照程序代碼自上而下執行,直到程序結束,中間沒有任何判斷和跳轉。

  2. 選擇結構(分支結構):判斷給定的條件,根據判斷結果控制程序的流程。包括if語句和switch語句。

    2.1 if語句:通過判斷給定表達式的值來決定程序的流程。常見if語句的形式有三種:

    (1)if(expression){

           statement;

         }

    (2)if(expression){

           statement;

         }else{

            statement;

         }

    (3)if(expression){

            statement;

         }else  if(expression){

            statement;

         }

           ......               //可以有零個或多個else if語句

         else{                  //最後的else語句可以視情況省略

             statement;  

         } 

  表達式expression的結果只能是布爾型,即此表達式的結果只能是true或false

  當表達式expression爲true時執行if所對應的代碼塊,否則,如果有else則執行else對應的代碼塊。

 (2)和(3)是相通的,(3)中如果沒有else if代碼塊就變成(2)。

  else語句必須和if或者else if配對使用,else總是與離它最近的if或者else if配對,可以通過大括號改變配對關係。

   備註:在流程控制語句中用每對大括號括起來的代碼被稱爲代碼塊,一個代碼塊通常被當做一個整體來執行(除非運行過程中遇到break、continue、return等關鍵字,或者出現異常),這個代碼塊也被稱爲條件執行體。

   2.2 switch語句(多分支語句):通過數據匹配的方式實現程序的多分支控制,語法格式如下:

    switch(expression){

        case  value 1:

            statement1;

            break;

        case  value 2:

            statement2;

            break;

        ......              //可以有多個case代碼塊

        case  value N:

            statementN;

            break;

        default:

            break;

    }

    expression的返回值類型只能是char、byte、short或int。

    switch語句先取得expression的返回值,再根據返回值依次與每個case語句所對應的value值匹配,匹配成功則執行相應的代碼塊。

    case語句對應的value值必須爲常量,且各個value值應不同。

    break語句用來在執行完相應的case分支語句後跳出switch語句,否則將順序執行後面的語句。某些情況下,多個不同的case值要執行一組相同的操作,可以省略相應代碼塊中的break語句。

    default是可選的,當表達式的值與任何的value值都不匹配時,則執行default代碼塊。如果沒有default語句,則程序不做任何操作,直接跳出switch語句。


3. 循環結構:利用循環結構可重複執行某一段代碼,直到不滿足循環條件爲止。循環結構主要有for、while、do-while三種循環語句。

    3.1 for語句:適用於明確知道循環次數的情況。語法格式如下:

    for(initialization;condition;iteration){

        statement;

    }

    循環的初始化(initialization):只在循環開始前執行一次,通常在此進行迭代變量的定義,該變量將作爲控制整個循環的計數器適用。

    條件表達式(condition):一個布爾型表達式,如果值爲真,執行循環體內的語句statement,如果爲假則結束循環。

    迭代表達式(iteration):通常是迭代變量的自增或自減運算表達式,在循環體(statement)執行完畢時執行。

    3.2 while語句:通常用於重複執行次數不確定的循環。語法格式如下:

    while(expression){

        statement;

    }

    expression是一個布爾表達式,while語句首先得到expression的返回值,當返回值爲true時,執行循環體內的語句statement,否則,循環結束。

    3.3 do-while語句:do-while與while的區別在於第一次循環時while是先判斷循環條件,再循環,若條件爲假,則循環體不會被執行。而do-while語句則是先執行循環體後再判斷即do-while循環至少會執行一次循環體


4. 跳轉語句:通過跳轉語句可以實現程序流程的跳轉。Java中的跳轉語句包括break語句、continue語句和return語句。

    4.1 break語句:break語句可以用在循環語句的內部,用來結束循環。例如:

    public static void main(String[] args){

        int i=0;

        while(i<10){

            i++;

            if(i==5){

                break;

            }

            System.out.println(i);

        }

        System.out.println("循環結束");

    }

    運行結果:輸出1,2,3,4,5以後,將會輸出“循環結束”。


    4.2 continue語句:只能用在循環語句內部,用來跳過本次循環,繼續執行下一次循環。在while和do-while循環結構中使用continue語句,表示跳轉到循環條件處繼續執行;而在for循環結構中使用continue語句,表示跳轉到迭代語句處繼續執行。例如:

    public static void main(String[] args){

        int i==0;

        while(i<4){

            i++

            if(i==2){

                continue;

            }

            System.out.println(i);

        }

        System.out.println("循環結束");

    }

    運行後輸出結果將是:1,3,4,循環結束


    4.3 return語句:return語句用在方法中,作用是終止當前方法的執行,返回到調用該方法的語句處,並繼續執行程序。語法格式如下:

    return [expression];

    return語句後面可以帶返回值,也可以不帶。

    表達式expression可以是常量、變量、對象等。return語句後面表達式的數據類型必須與方法聲明的數據類型一致。

    當程序執行return語句時,先計算表達式的值,然後將表達式的值返回到調用該方法的語句處。

    位於return語句後面的代碼塊不會被執行,因此return語句通常位於代碼塊的最後。


5. Java程序的註釋用法:Java有三種註釋方式,分別爲單行註釋、多行註釋和文檔註釋。

    單行註釋:以雙斜槓"//"開始,終止於本行結束。用於對一行代碼的簡短說明。

    多行註釋:以“/*”開始,以“*/”結束,兩者間所有的字符都是多行註釋的內容。通常用於對文件、方法、數據結構等的說明,或者算法的描述。一般位於方法的前面,起引導作用,也可以根據需要放在其他位置。

    文檔註釋:以“/**”開始,以“*/”結束,此間所有字符都是文檔註釋的內容。文檔註釋主要是爲了支持JDK工具javadoc,通過javadoc,文檔註釋將會生成HTML格式的代碼報告,因此文檔註釋應當書寫在類、構造方法、成員方法以及常量或變量的定義之前。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章