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

java的三種流程控制語句

表達 lse java 相同 條件 循環結構 false 使用場景 ava

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循環。

java的三種流程控制語句