Java if else用法详解(新手必看)
在 Java 里,由 if 语句引导的选择结构有三种,分别是 if 结构、if else 结构和 if else if结构,本节将带领大家逐个掌握它们。

图 1 if 结构流程
如果语句组只有一条语句,可以省略大括号,但从编程规范角度来看不要省略大括号,省略大括号会使程序的可读性变差。
if 结构示例代码如下:
使用 IntelliJ IDEA 工具运行示例代码时会暂停在代码第 ① 处等待用户输入,如下图所示:
输入整数后按 ‹Enter› 键继续执行,结果如下图所示:
if else 结构流程如下图所示:
首先测试条件表达式,如果值为 true,则执行“语句组1”,如果条件表达式为 false,则忽略“语句组1”而直接执行“语句组2”,然后继续执行后面的语句。
if else 结构示例代码如下:
if else if 结构的流程如下图所示:
if else if 结构实际上是 if else 结构的多层嵌套,它明显的特点就是在多个分支中只执行一个语句组,而其他分支都不执行,所以这种结构可以用于有多种判断结果的分支中。
if else if 结构示例代码如下:
Java if结构
if 结构的语法格式如下:
if(条件表达式){
语句组
}
if 结构流程如下图所示,首先测试条件表达式,如果为 true,则执行“语句组”(包含一条或多条语句的代码块),否则就执行 if 语句结构后面的语句。
图 1 if 结构流程
如果语句组只有一条语句,可以省略大括号,但从编程规范角度来看不要省略大括号,省略大括号会使程序的可读性变差。
if 结构示例代码如下:
import java.util.Scanner; // 导入 Scanner 类
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in); // 创建 Scanner 对象用于读取控制台输入
System.out.print("请输入考试分数: "); // 提示用户输入分数
int score = in.nextInt(); // ① 读取用户输入的整数
if (score >= 60) { // 判断分数是否大于等于60
System.out.println("考试通过"); // 输出考试通过
}
}
}
在这个示例中使用 Scanner 类来读取用户输入的整数,并将其存储在 score 变量中。然后使用 if 结构来判断 score 是否大于等于 60,如大于等于 60,则输出“考试通过”。使用 IntelliJ IDEA 工具运行示例代码时会暂停在代码第 ① 处等待用户输入,如下图所示:

输入整数后按 ‹Enter› 键继续执行,结果如下图所示:

Java if else结构
if else 结构的语法格式如下:
if(条件表达式1){
语句组1
}else{
语句组2
}
if else 结构流程如下图所示:

首先测试条件表达式,如果值为 true,则执行“语句组1”,如果条件表达式为 false,则忽略“语句组1”而直接执行“语句组2”,然后继续执行后面的语句。
if else 结构示例代码如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("请输入考试分数:");
int score = in.nextInt();
if (score >= 60) {
System.out.println("考试通过");
} else {
System.out.println("考试不通过");
}
}
}
上述代码与前面的实例类似,这里不再赘述。Java if else if结构
如果有多个分支,可以使用 if else if 结构,它的的语法格式如下:
if(条件表达式1){
语句组1
}else if(条件表示2){
语句组2
}else if(条件表示3){
语句组3
}
...
else if(条件表达式n){
语句组n
}
if else if 结构的流程如下图所示:

if else if 结构实际上是 if else 结构的多层嵌套,它明显的特点就是在多个分支中只执行一个语句组,而其他分支都不执行,所以这种结构可以用于有多种判断结果的分支中。
if else if 结构示例代码如下:
import java.util.Scanner;
public class GradeCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入学生的分数:");
int score = scanner.nextInt();
if (score >= 90 && score <= 100) {
System.out.println("学生的等级是:A");
} else if (score >= 80 && score < 90) {
System.out.println("学生的等级是:B");
} else if (score >= 70 && score < 80) {
System.out.println("学生的等级是:C");
} else if (score >= 60 && score < 70) {
System.out.println("学生的等级是:D");
} else if (score >= 0 && score < 60) {
System.out.println("学生的等级是:F");
}else {
System.out.println("输入的分数无效,请输入 0 到 100 之间的整数。");
}
}
}
ICP备案:
公安联网备案: