Java if ... else
Java 条件和 if 语句
Java 支持数学中常见的逻辑条件:
- 小于:
a < b
- 小于或等于:
a <= b
- 大于:
a > b
- 大于或等于:
a >= b
- 等于
a == b
- 不等于:
a != b
您可以使用这些条件为不同的决定执行不同的操作。
Java 提供以下条件语句:
- 使用
if
指定要执行的代码块,如果指定条件为真 - 使用
else
指定要执行的代码块,如果相同条件为假 - 如果第一个条件为假,则使用
else if
指定要测试的新条件 - 使用
switch
指定要执行的多个替代代码块
if 语句
使用 if
语句指定在条件为 true
时要执行的 Java 代码块。
语法
if (condition) { // 条件为真时执行的代码块 }
注意:if
是小写字母。大写字母(If、iF 或 IF)将产生错误。
在下例中,我们测试两个值,确定 20 是否大于 18。如果条件为 true
,则打印文本:
实例
if (20 > 18) { System.out.println("20 大于 18"); }
我们还可以测试变量:
实例
int x = 20; int y = 18; if (x > y) { System.out.println("x 大于 y"); }
例子解释
在上例中,我们使用两个变量 x 和 y 来测试 x 是否大于 y(使用 >
运算符)。因为 x 是 20,y 是 18,我们知道 20 大于 18,所以将在屏幕上打印 "x 大于 y"。
else 语句
如果条件为 false
,则使用 else
语句指定要执行的代码块。
语法
if (condition) { // 条件为真时执行的代码块 } else { // 条件为假时执行的代码块 }
实例
int time = 20; if (time < 18) { System.out.println("日安"); } else { System.out.println("晚安"); } // 输出 "晚安"
例子解释
在上面的例子中,时间 (20) 大于 18,因此条件为 false
。因此,我们转到 else
条件并在屏幕上打印 "晚安"。如果时间小于 18,程序将打印 "日安"。
else if 语句
如果第一个条件为 false
,则使用 else if
语句指定新条件。
语法
if (condition1) { // 条件 1 为真时执行的代码块 } else if (condition2) { // 当条件 1 为假且条件 2 为真时要执行的代码块 } else { // 当条件 1 为假且条件 2 为假时要执行的代码块 }
实例
int time = 22; if (time < 10) { System.out.println("早安"); } else if (time < 20) { System.out.println("日安"); } else { System.out.println("晚安"); } // 输出 "晚安"
例子解释
在上面的例子中,时间 (22) 大于 10,因此第一个条件为 false
。else if
语句中的下一个条件也是 false
,因此我们继续处理 else
条件,因为条件 1 和条件 2 都为 false
- 在屏幕上打印 "晚安"。
但是,如果时间是 14,我们的程序将打印 "日安"。
简写 if...else(三元运算符)
还有一个 if else 的简写,被称为三元运算符,因为它由三个操作数组成。它可用一行替换多行代码,通常用于替换简单的 if else 语句:
语法
variable = (condition) ? expressionTrue : expressionFalse;
可以不这样写:
实例
int time = 20; if (time < 18) { System.out.println("早安"); } else { System.out.println("晚安"); }
可以简单地写为:
实例
int time = 20; String result = (time < 18) ? "早安" : "晚安"; System.out.println(result);
实际生活中的例子
此例展示了如何使用 if..else 语句,在用户输入正确代码时“打开门”:
实例
int doorCode = 1337; if (doorCode == 1337) { System.out.println("代码正确。门已打开。"); } else { System.out.println("代码错误。门保持关闭。"); }
此例展示了如何使用 if..else 语句来判断一个数是正数还是负数:
实例
int myNum = 10; // 这是一个正数还是负数? if (myNum > 0) { System.out.println("该值为正数。"); } else if (myNum < 0) { System.out.println("该值为负数。"); } else { System.out.println("该值为 0。"); }
判断一个人是否达到投票年龄:
实例
int myAge = 25; int votingAge = 18; if (myAge >= votingAge) { System.out.println("已达到投票年龄!"); } else { System.out.println("未达到投票年龄。"); }
判断一个数是偶数还是奇数:
实例
int myNum = 5; if (myNum % 2 == 0) { System.out.println(myNum + " 是偶数"); } else { System.out.println(myNum + " 是奇数"); }