Java 条件语句 - if...else详解

在 Java 编程中,条件语句用于根据不同条件执行不同的代码块。其中,if...else结构是最基本且常用的条件控制机制。本文将详细介绍 Java 中if...else语句的语法、用法和常见应用场景,并通过示例代码进行说明。

一、基本 if 语句

1. 语法结构

if (布尔表达式) {
    // 当布尔表达式为true时执行的代码
}
 
  • 布尔表达式:必须返回truefalse
  • 执行流程:若表达式为true,则执行大括号内的代码;否则跳过。

2. 示例代码

int age = 20;
if (age >= 18) {
    System.out.println("成年人");
}
 

二、if...else 语句

1. 语法结构

 
if (布尔表达式) {
    // 当布尔表达式为true时执行的代码
} else {
    // 当布尔表达式为false时执行的代码
}
 
  • 执行流程:若表达式为true,执行if块;否则执行else块。

2. 示例代码

 
int score = 75;
if (score >= 60) {
    System.out.println("及格");
} else {
    System.out.println("不及格");
}
 

三、if...else if...else 语句

1. 语法结构

if (布尔表达式1) {
    // 当布尔表达式1为true时执行的代码
} else if (布尔表达式2) {
    // 当布尔表达式2为true时执行的代码
} else {
    // 当所有布尔表达式都为false时执行的代码
}
 
  • 执行流程:依次检查每个表达式,一旦某个为true,执行对应代码块并跳出;若全部为false,执行else块(若存在)。

2. 示例代码

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("不及格");
}
 

四、嵌套 if 语句

1. 语法结构

if (外部表达式) {
    if (内部表达式) {
        // 当外部和内部表达式都为true时执行
    } else {
        // 当外部为true、内部为false时执行
    }
} else {
    // 当外部表达式为false时执行
}
 

2. 示例代码

int age = 25;
boolean hasLicense = true;

if (age >= 18) {
    if (hasLicense) {
        System.out.println("可以驾驶");
    } else {
        System.out.println("需要驾驶证");
    }
} else {
    System.out.println("未达到法定驾驶年龄");
}
 

五、三元运算符(?:)

1. 语法结构

 
变量 = (布尔表达式) ? 值1 : 值2;
 
  • 执行逻辑:若表达式为true,返回值 1;否则返回值 2。

2. 示例代码

int a = 10;
int b = 20;
int max = (a > b) ? a : b;  // max = 20
 

3. 与 if...else 的对比

  • 三元运算符:代码更简洁,适合简单的条件赋值。
  • if...else:结构更清晰,适合复杂的条件逻辑。

六、常见应用场景

1. 数值比较

int num = -5;
if (num > 0) {
    System.out.println("正数");
} else if (num < 0) {
    System.out.println("负数");
} else {
    System.out.println("零");
}
 

2. 字符串比较

String password = "123456";
if (password.equals("123456")) {
    System.out.println("密码正确");
} else {
    System.out.println("密码错误");
}
 

3. 对象空值检查

String name = null;
if (name == null) {
    System.out.println("名字为空");
} else {
    System.out.println("名字是: " + name);
}
 

七、注意事项

  1. 代码块省略:若ifelse块只有一条语句,可省略大括号,但不建议这样做,以免降低代码可读性。
     
    // 不推荐
    if (age > 18)
        System.out.println("成年人");
    
     
  2. 布尔表达式简化:避免冗余的比较,例如:
     
    // 不推荐
    if (isDone == true) { ... }
    
    // 推荐
    if (isDone) { ... }
    
     
  3. 逻辑运算符优先级:使用括号明确优先级,避免混淆。
     
    // 推荐
    if ((age >= 18) && (hasLicense)) { ... }
    

八、总结

  • 基本 if:单条件判断。
  • if...else:二选一执行。
  • if...else if...else:多选一执行。
  • 嵌套 if:复杂条件组合。
  • 三元运算符:简洁的条件赋值。

合理使用if...else结构可以使代码逻辑清晰、易于维护。在实际开发中,应根据条件复杂度选择合适的语法形式,并注意代码的可读性和性能。

posted on 2025-06-21 10:31  coding博客  阅读(404)  评论(0)    收藏  举报