條件判斷是程式控制流程的核心。Java 提供 if 與 switch 兩大條件語句,其中 if-else 結構最靈活、應用最廣。本文系統講解三種 if 語法形式、執行流程、代碼塊用法、巢狀匹配規則及實戰範例,助你精準掌握條件邏輯。
if (條件表達式) {
// 條件為 true 時執行的代碼塊
}
boolean 型別int a = 10;
if (a >= 0) {
System.out.println("a 是非負數");
}
if (a % 2 == 0) {
System.out.println("a 是偶數");
}
if (條件表達式) {
// 條件成立執行
} else {
// 條件不成立執行
}
else 代表「否則」,與前一個 if 互斥,必有一個分支執行if 時,else 始終匹配最近的未配對 if(可用大括號明確界定)int n = 12;
if (n % 2 != 0) {
System.out.println("n 是奇數");
} else {
System.out.println("n 是偶數");
}
if (條件1) {
// 代碼塊1
} else if (條件2) {
// 代碼塊2
} else if (條件3) {
// 代碼塊3
} else {
// 所有條件都不成立時執行(可選)
}
else 為兜底分支,可選int month = 3, days = 0;
if (month == 1) days = 31;
else if (month == 2) days = 28;
else if (month == 3) days = 31;
else if (month == 4) days = 30;
else if (month == 5) days = 31;
else if (month == 6) days = 30;
else if (month == 7) days = 31;
else if (month == 8) days = 31;
else if (month == 9) days = 30;
else if (month == 10) days = 31;
else if (month == 11) days = 30;
else if (month == 12) days = 31;
System.out.println(days); // 輸出 31
int score = 87;
if (score >= 90) {
System.out.println('A');
} else if (score >= 80) {
System.out.println('B');
} else if (score >= 70) {
System.out.println('C');
} else if (score >= 60) {
System.out.println('D');
} else {
System.out.println('E');
}
// 輸出 B
注意:條件須按遞減順序寫,若寫成 score >= 60 在最前面,所有及格分數都會被判為 D。
switchif-else 是 Java 流程控制的基石。掌握三種形式的語法、執行流程與匹配規則,配合代碼塊規範寫法,能清晰表達複雜業務邏輯。多分支場景下注意條件順序,必要時改用 switch 或多態設計提升可維護性。