java条件语句是java编程语言中用于控制程序执行流程的语法结构,它可以根据预设的条件判断结果,决定执行哪一部分代码,让程序能够应对不同的业务场景,实现灵活的逻辑处理。

if条件语句
if条件语句是最常用的条件判断结构,核心逻辑是判断条件表达式的结果是否为true,如果为true就执行对应的代码块,否则跳过该代码块。if语句有三种常见形式,分别是单分支if、双分支if-else、多分支if-else if-else。
单分支if语句
单分支if语句仅当条件成立时执行指定代码,不成立则不执行任何操作,语法结构如下:
// 单分支if语句示例
int score = 85;
// 判断分数是否大于等于60
if (score >= 60) {
System.out.println("成绩合格");
}
双分支if-else语句
双分支if-else语句会在条件成立时执行if后的代码块,不成立时执行else后的代码块,语法结构如下:
// 双分支if-else语句示例
int score = 55;
if (score >= 60) {
System.out.println("成绩合格");
} else {
System.out.println("成绩不合格");
}
多分支if-else if-else语句
多分支语句可以处理多个条件的判断场景,会从上到下依次判断条件,第一个满足条件的分支会被执行,后续分支不再判断,语法结构如下:
// 多分支if-else if-else语句示例
int score = 88;
if (score >= 90) {
System.out.println("成绩等级为A");
} else if (score >= 80) {
System.out.println("成绩等级为B");
} else if (score >= 60) {
System.out.println("成绩等级为C");
} else {
System.out.println("成绩等级为D");
}
switch条件语句
switch语句适合处理多个固定值的等值判断场景,判断表达式的结果和各个case后的常量值是否匹配,匹配则执行对应case的代码块,通常需要配合break关键字避免穿透执行,语法结构如下:
// switch语句示例
int day = 3;
switch (day) {
case 1:
System.out.println("今天是周一");
break;
case 2:
System.out.println("今天是周二");
break;
case 3:
System.out.println("今天是周三");
break;
default:
System.out.println("输入的天数不合法");
break;
}
需要注意switch表达式支持的类型包含byte、short、int、char、String以及对应的包装类,不支持long、float、double等类型。
三元运算符条件表达式
三元运算符是一种简洁的条件判断语法,适合简单的二分支场景,语法格式为条件表达式 ? 表达式1 : 表达式2,当条件表达式为true时返回表达式1的结果,否则返回表达式2的结果,示例如下:
// 三元运算符示例
int a = 10;
int b = 20;
// 判断a和b的大小,取较大值
int max = a > b ? a : b;
System.out.println("较大的数是:" + max);
不同条件语句的使用场景
可以根据实际需求选择合适的条件语句:
- 如果是简单的二分支逻辑,且代码逻辑简短,优先使用三元运算符,代码更简洁
- 如果是范围判断或者复杂的条件逻辑,优先使用if系列语句
- 如果是多个固定值的等值判断,优先使用switch语句,可读性和执行效率更高
| 条件语句类型 | 适用场景 | 特点 |
|---|---|---|
| if系列语句 | 范围判断、复杂条件逻辑 | 灵活度高,支持任意条件表达式 |
| switch语句 | 多固定值等值判断 | 可读性好,执行效率较高 |
| 三元运算符 | 简单二分支逻辑 | 语法简洁,代码量少 |