Java 中的条件语句用于控制程序执行流程,让程序在满足不同条件时执行不同的代码块。常用的 Java 条件语句包括:if-elseswitch 和三元运算符。让我们一个个来搞懂它们!🚀


1️⃣ if-else 语句

if-else 是 Java 中最基础也最常用的条件语句。根据布尔表达式的结果(truefalse)决定执行哪个代码块。

语法结构:

1
2
3
4
5
if (条件表达式) {
// 条件为 true 时执行
} else {
// 条件为 false 时执行
}

示例:判断一个数是否为偶数

1
2
3
4
5
6
7
8
9
10
11
public class IfElseExample {
public static void main(String[] args) {
int number = 10;

if (number % 2 == 0) {
System.out.println(number + " 是偶数");
} else {
System.out.println(number + " 是奇数");
}
}
}

输出:

1
10 是偶数

2️⃣ if-else if-else 多分支语句

用于处理多个条件分支,从上到下依次判断,执行第一个满足条件的代码块。

语法结构:

1
2
3
4
5
6
7
if (条件1) {
// 条件1满足时执行
} else if (条件2) {
// 条件2满足时执行
} else {
// 所有条件都不满足时执行
}

示例:根据分数判断等级

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class GradeExample {
public static void main(String[] args) {
int score = 85;

if (score >= 90) {
System.out.println("优秀");
} else if (score >= 75) {
System.out.println("良好");
} else if (score >= 60) {
System.out.println("及格");
} else {
System.out.println("不及格");
}
}
}

输出:

1
良好

3️⃣ 嵌套 if 语句

if 语句可以嵌套使用,适用于需要多层判断的场景。

示例:判断一个数是否为正偶数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class NestedIfExample {
public static void main(String[] args) {
int number = 8;

if (number > 0) {
if (number % 2 == 0) {
System.out.println(number + " 是正偶数");
} else {
System.out.println(number + " 是正奇数");
}
} else {
System.out.println(number + " 不是正数");
}
}
}

输出:

1
8 是正偶数

4️⃣ switch 语句

switch 适用于多分支、等值判断,相比 if-else 更简洁。

语法结构:

1
2
3
4
5
6
7
8
9
10
switch (表达式) {
case1:
// 当表达式等于 值1 时执行
break;
case2:
// 当表达式等于 值2 时执行
break;
default:
// 所有 case 都不匹配时执行
}

示例:根据星期数输出星期名称

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class SwitchExample {
public static void main(String[] args) {
int day = 3;

switch (day) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
default:
System.out.println("周末");
}
}
}

输出:

1
星期三

⚠️ 注意事项:

  • break:跳出 switch,不加会发生**“穿透”**,继续执行后面的 case
  • default(可选):当所有 case 都不匹配时执行。

5️⃣ switch 表达式(Java 14+)

switch 在 Java 14 之后支持更简洁的表达式写法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class SwitchExpressionExample {
public static void main(String[] args) {
int day = 3;

String dayName = switch (day) {
case 1 -> "星期一";
case 2 -> "星期二";
case 3 -> "星期三";
case 4 -> "星期四";
case 5 -> "星期五";
default -> "周末";
};

System.out.println(dayName);
}
}

输出:

1
星期三

6️⃣ 三元运算符(?:

三元运算符是简洁版的 if-else,用于根据条件选择一个值。

语法结构:

1
变量 = (条件) ? 表达式1 : 表达式2;

示例:判断一个数的正负

1
2
3
4
5
6
7
8
public class TernaryOperatorExample {
public static void main(String[] args) {
int number = -5;

String result = (number >= 0) ? "非负数" : "负数";
System.out.println(result);
}
}

输出:

1
负数

7️⃣ 小技巧 & 注意事项

  • if-else 更灵活,支持各种复杂条件。
  • switch 更简洁,适合等值判断。
  • switch 从 Java 14 开始支持更简洁的箭头表达式。
  • 三元运算符更简洁,但只适合简单条件判断。

8️⃣ 练习题

🧠 问题 1:写一个程序,判断一个年份是否是闰年。

🧠 问题 2:用 switch 实现简单计算器(支持加、减、乘、除)。

🧠 问题 3:使用三元运算符找出两个数中的较大值。


学会 Java 条件语句后,你就可以让程序具备智能决策能力啦!💡 有不懂的地方或练习需要解答,欢迎告诉我!💬🌱

来源:

  • Chatgpt-4o
  • 我的理解