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 + " 是奇数");
}