Java條件語句if-else:輕鬆掌握分支邏輯,附實例

輕鬆掌握Java條件語句if-else:分支邏輯的基礎

一、爲什麼需要條件語句?

在生活中,我們經常需要根據不同情況做選擇:比如“如果下雨,就帶傘;否則不帶”“如果成績≥60分,就及格;否則不及格”。Java中,條件語句(如if-else)正是用來實現這種“先判斷條件,再決定執行哪段代碼”的邏輯。沒有條件語句,程序只能按順序執行固定代碼,無法應對複雜的場景。

二、if語句:單分支條件判斷

語法格式

if (條件表達式) {
    // 當條件表達式結果爲true時,執行這段代碼
}
  • 條件表達式:必須是返回布爾值(truefalse)的表達式,比如num > 0score >= 60等。
  • 代碼塊:若條件成立,則執行大括號內的代碼;若不成立,則跳過該代碼塊。

示例1:判斷一個數是否爲正數

public class IfExample {
    public static void main(String[] args) {
        int num = 5; // 定義一個整數
        // 判斷num是否大於0
        if (num > 0) {
            System.out.println("這是一個正數"); // 條件成立,執行該行
        }
        // 若num=0或負數,大括號內代碼不會執行
    }
}

輸出結果這是一個正數

三、if-else語句:雙分支條件判斷

當需要兩種結果時(比如“正數”或“非正數”),使用if-else
語法格式

if (條件表達式) {
    // 條件成立時執行
} else {
    // 條件不成立時執行
}

示例2:判斷一個數是正數還是非正數

public class IfElseExample {
    public static void main(String[] args) {
        int num = -3;
        if (num > 0) {
            System.out.println("這是一個正數");
        } else {
            System.out.println("這不是一個正數(可能是0或負數)");
        }
    }
}

輸出結果這不是一個正數(可能是0或負數)

四、if-else if-else語句:多分支條件判斷

當需要處理多個條件時(比如“成績等級”),使用if-else if-else
語法格式

if (條件1) {
    // 條件1成立時執行
} else if (條件2) {
    // 條件1不成立,條件2成立時執行
} else if (條件3) {
    // 前兩個條件都不成立,條件3成立時執行
} else {
    // 所有條件都不成立時執行
}

示例3:根據成績判斷等級

public class IfElseIfExample {
    public static void main(String[] args) {
        int score = 85;
        if (score >= 90) {
            System.out.println("優秀");
        } else if (score >= 80) {
            System.out.println("良好");
        } else if (score >= 60) {
            System.out.println("及格");
        } else {
            System.out.println("不及格");
        }
    }
}

輸出結果良好

五、注意事項與常見錯誤

  1. 條件表達式的符號
    - 錯誤:將比較符號==寫成賦值符號=(比如if (num = 5)),這會導致編譯錯誤(因爲=是賦值,不是比較)。
    - 正確:if (num == 5)==是比較運算符)。

  2. 條件判斷順序
    多分支時,需注意條件範圍的“大小”順序。例如:

   // 錯誤示例:範圍小的條件放在後面
   if (score >= 60) { // 會錯誤處理分數90+,因爲先判斷>=60,90會被歸類爲及格
       System.out.println("及格");
   } else if (score >= 90) {
       System.out.println("優秀");
   }

正確順序:先判斷範圍大的條件,再判斷範圍小的條件(或相反,根據邏輯)。

  1. 大括號的使用
    - 若條件後只有一行代碼,大括號可省略(但強烈建議初學者始終加上,避免後續修改出錯)。
    - 錯誤:
     if (num > 0)
         System.out.println("正數"); // 若else後無大括號,可能影響邏輯
  • 建議:始終用大括號包裹代碼塊,保持結構清晰。

六、嵌套if-else(進階)

ifelse中再嵌套if,可實現更復雜的邏輯。
示例4:判斷一個數是否爲正偶數

public class NestedIfExample {
    public static void main(String[] args) {
        int num = 4;
        if (num > 0) { // 外層條件:正數
            if (num % 2 == 0) { // 內層條件:偶數
                System.out.println("這是一個正偶數");
            } else {
                System.out.println("這是一個正奇數");
            }
        } else {
            System.out.println("這不是正數");
        }
    }
}

輸出結果這是一個正偶數

七、總結

  • 核心作用:根據條件選擇執行不同代碼塊,實現分支邏輯。
  • 基礎結構if(單分支)、if-else(雙分支)、if-else if-else(多分支)。
  • 關鍵細節
  • 條件表達式必須用==比較,不能用=賦值。
  • 多分支時注意條件順序,避免邏輯覆蓋。
  • 大括號是代碼塊的“邊界”,始終明確包裹範圍。

通過以上示例和注意事項,初學者可快速掌握if-else的基礎用法,後續結合嵌套和複雜場景即可靈活應用。

小夜