1. 程式人生 > >java 中的三種流程控制語句

java 中的三種流程控制語句

1.順序結構

  順序結構:是程式最簡單最基本的流程控制,沒有特定的語法結構,按照程式碼的先後順序,依次執行,程式中大多數的程式碼都是這樣執行的。
  執行流程:從上往下,依次執行。

2.選擇結構

  •   if語句格式
        格式1
          if(比較表示式orboolean型別的值){
              語句體;
          }
        執行流程:先計算比較表示式的值,返回值true還是false;
              如果是true,執行語句體,如果是false,不執行語句體。
        格式2
          if(比較表示式){
              語句體1;
          }else{
              語句體2;
          }
        注意:else後面沒有比較表示式,只有if後面有。
        執行流程:先計算表示式,返回值是true還是false;
             如果是true,執行語句體1;如果是false,執行語句體2。
        格式3
          if(比較表示式1){
              語句體1;
          }else if(比較表示式2){
              語句體2;
          }else if(比較表示式3){
              語句體3;
          }
          ........
          else{
              語句體n;
          }
        執行流程:先計算表示式1,看返回值是true還是false;
             如果是true執行語句體1,if語句結束;
             如果是false,計算表示式2,看返回值是true還是false;
             如果是true執行語句體2,if語句結束;
             如果是false,計算表示式3,看返回值是true還是false;
             .........
             如果是false,執行語句體n。

  •   switch語句
        格式
          switch(表示式){
            case 值1:
                語句體1;
                break;
            case 值2:
                語句體2;
                break;
            case 值3:
                語句體3;
                break;
            ...............
            default:
                語句體n;
                break;
          }
        解釋:
          (1)switch語句表示式取值:byte,short,int,char,JDK5版本後可以有列舉,JDK7版本後有String;
          (2)case後面跟的是要和表示式進行比較的值;
          (3)語句體可以是一條或多條語句;
          (4)break表示中斷、結束的意思,可以跳出switch語句;
          (5)default語句表示所有情況都不匹配的時候,就執行該處語句,與if語句中的else相似。
        執行流程:先計算表示式的值,然後和case中的值匹配,如果成功,執行該處語句。否則執行default中的語句。
        注意事項:
          (1)case後面只能是常量,不能是常量,也不能出現相同的值;
          (2)default可以省略,但不建議,因為他的作用是對不正確情況給出指示;
          (3)break可以省略,但不建議,會有case穿透現象;
          (4)default可以在任意位置,但建議在最後;
          (5)switch語句結束條件:遇到break就結束;執行到末尾就結束。

  •   if語句和switch語句的區別
      if語句使用場景:針對結果是boolean型別的判斷
             針對一個範圍的判斷
             針對幾個常量值的判斷
  •   switch語句使用場景:針對幾個常量值的判斷

    3.迴圈結構

  •   for語句
       格式:
        for(初始化表示式語句;判斷條件語句;控制條件語句){
            迴圈體語句;
        }
       執行流程:
        (1)執行初始化表示式語句;
        (2)執行判斷條件語句,看返回值是true還是false,如果是true,繼續執行,如果是false,結束迴圈;
        (3)執行迴圈體語句;
        (4)執行控制條件語句;
        (5)回到(2)繼續執行。
       注意:初始化表示式語句只執行一次。

  •   while迴圈
      while語句格式:
        初始化條件語句;
        while(判斷條件語句){
          迴圈體語句;
          控制條件語句;
        }
      執行流程:(1)執行初始化條件語句;
           (2)執行判斷條件語句,看返回值是true還是false,如果是true,繼續執行,如果是false,結束迴圈;
           (3)執行迴圈語句體;
           (4)執行控制條件語句;
           (5)回到(2)繼續。
      do...while迴圈
      do...while語句格式:
        初始化條件語句
        do{
          迴圈體語句;
          控制條件語句;
        }while(判斷條件語句);
      執行流程:(1)執行初始化條件語句;
           (2)執行迴圈體語句;
           (3)執行控制條件語句;
           (4)執行判斷條件語句,看返回值是true還是false,如果是true,繼續執行,如果是false,結束迴圈;
           (5)回到(2)繼續。
  •   三種迴圈的區別
        (1)do...while迴圈至少執行一次迴圈體,而for,while迴圈必須先判斷條件是否成立,然後決定是否執行迴圈體語句;
        (2)如果你想在迴圈結束後,繼續使用控制條件的那個變數,用while迴圈,否則用for迴圈,不知道用for迴圈;
        (3)建議先考慮for迴圈,然後是while迴圈,最後是do...while迴圈。

1.順序結構

  順序結構:是程式最簡單最基本的流程控制,沒有特定的語法結構,按照程式碼的先後順序,依次執行,程式中大多數的程式碼都是這樣執行的。
  執行流程:從上往下,依次執行。

2.選擇結構

  •   if語句格式
        格式1
          if(比較表示式orboolean型別的值){
              語句體;
          }
        執行流程:先計算比較表示式的值,返回值true還是false;
              如果是true,執行語句體,如果是false,不執行語句體。
        格式2
          if(比較表示式){
              語句體1;
          }else{
              語句體2;
          }
        注意:else後面沒有比較表示式,只有if後面有。
        執行流程:先計算表示式,返回值是true還是false;
             如果是true,執行語句體1;如果是false,執行語句體2。
        格式3
          if(比較表示式1){
              語句體1;
          }else if(比較表示式2){
              語句體2;
          }else if(比較表示式3){
              語句體3;
          }
          ........
          else{
              語句體n;
          }
        執行流程:先計算表示式1,看返回值是true還是false;
             如果是true執行語句體1,if語句結束;
             如果是false,計算表示式2,看返回值是true還是false;
             如果是true執行語句體2,if語句結束;
             如果是false,計算表示式3,看返回值是true還是false;
             .........
             如果是false,執行語句體n。

  •   switch語句
        格式
          switch(表示式){
            case 值1:
                語句體1;
                break;
            case 值2:
                語句體2;
                break;
            case 值3:
                語句體3;
                break;
            ...............
            default:
                語句體n;
                break;
          }
        解釋:
          (1)switch語句表示式取值:byte,short,int,char,JDK5版本後可以有列舉,JDK7版本後有String;
          (2)case後面跟的是要和表示式進行比較的值;
          (3)語句體可以是一條或多條語句;
          (4)break表示中斷、結束的意思,可以跳出switch語句;
          (5)default語句表示所有情況都不匹配的時候,就執行該處語句,與if語句中的else相似。
        執行流程:先計算表示式的值,然後和case中的值匹配,如果成功,執行該處語句。否則執行default中的語句。
        注意事項:
          (1)case後面只能是常量,不能是常量,也不能出現相同的值;
          (2)default可以省略,但不建議,因為他的作用是對不正確情況給出指示;
          (3)break可以省略,但不建議,會有case穿透現象;
          (4)default可以在任意位置,但建議在最後;
          (5)switch語句結束條件:遇到break就結束;執行到末尾就結束。

  •   if語句和switch語句的區別
      if語句使用場景:針對結果是boolean型別的判斷
             針對一個範圍的判斷
             針對幾個常量值的判斷
  •   switch語句使用場景:針對幾個常量值的判斷

    3.迴圈結構

  •   for語句
       格式:
        for(初始化表示式語句;判斷條件語句;控制條件語句){
            迴圈體語句;
        }
       執行流程:
        (1)執行初始化表示式語句;
        (2)執行判斷條件語句,看返回值是true還是false,如果是true,繼續執行,如果是false,結束迴圈;
        (3)執行迴圈體語句;
        (4)執行控制條件語句;
        (5)回到(2)繼續執行。
       注意:初始化表示式語句只執行一次。

  •   while迴圈
      while語句格式:
        初始化條件語句;
        while(判斷條件語句){
          迴圈體語句;
          控制條件語句;
        }
      執行流程:(1)執行初始化條件語句;
           (2)執行判斷條件語句,看返回值是true還是false,如果是true,繼續執行,如果是false,結束迴圈;
           (3)執行迴圈語句體;
           (4)執行控制條件語句;
           (5)回到(2)繼續。
      do...while迴圈
      do...while語句格式:
        初始化條件語句
        do{
          迴圈體語句;
          控制條件語句;
        }while(判斷條件語句);
      執行流程:(1)執行初始化條件語句;
           (2)執行迴圈體語句;
           (3)執行控制條件語句;
           (4)執行判斷條件語句,看返回值是true還是false,如果是true,繼續執行,如果是false,結束迴圈;
           (5)回到(2)繼續。
  •   三種迴圈的區別
        (1)do...while迴圈至少執行一次迴圈體,而for,while迴圈必須先判斷條件是否成立,然後決定是否執行迴圈體語句;
        (2)如果你想在迴圈結束後,繼續使用控制條件的那個變數,用while迴圈,否則用for迴圈,不知道用for迴圈;
        (3)建議先考慮for迴圈,然後是while迴圈,最後是do...while迴圈。