Java 条件语句
Java if…else 语句是条件语句,用于在满足某个条件时执行某些代码。在本教程中,我们通过示例介绍了 Java if 和 if…else 流程控制控制语句。
Java if...else
语句是条件语句,用于在满足某个条件时执行某些代码。在本教程中,我们通过示例介绍了 if
和 if...else
流程控制语句。
在编程中,我们使用 if...else
语句在满足某个条件时运行一个代码块。
例如,根据学生的分数成绩计算出等级成绩(A、B、C)。
- 如果分数高于 90,则指定为 A 级
- 如果分数高于 75,则指定为 B 级
- 如果分数高于 65,则指定为 C 级
Java if 语句
if-then 语句的语法是:
if (condition) {
// statements
}
这里, condition
是一个布尔表达式,例如 age >= 18
.
- 如果
condition
计算结果为true
,if 语句块中的代码被执行 - 如果
condition
计算结果为false
,if 语句块中的代码被跳过
if 语句的逻辑
看下图理解 Java if 语句的逻辑:
示例 1:Java if 语句
public class IfStatement {
public static void main(String[] args) {
int number = 10;
// 检查数字是否小于 0
if (number < 0) {
System.out.println("数字是负数。");
}
System.out.println("执行了 if 块之外的语句。");
}
}
输出
执行了 if 块之外的语句。
在程序中, number < 0
是 false
。因此,括号内的代码被跳过。
注意:如果您想了解有关逻辑测试条件的更多信息,请访问 Java 运算符章节。
我们也可以使用 Java 字符串)作为测试条件,请看下面的例子。
示例 2:Java if 语句判断字符串
public class Main {
public static void main(String[] args) {
// 创建一个字符串变量
String language = "Java";
// 判断字符串内容是否是 Java
if (language == "Java") {
System.out.println("Best Programming Language");
}
}
}
输出
Best Programming Language
在上面的例子中,我们在 if
条件中比较的是两个字符串是否相同。
Java if…else 语句
if
语句如果测试表达式的计算结果为 true
,则该语句执行特定代码段。但是,如果测试表达式的计算结果为 false
,则它什么都不做。
if...else
语句如果测试表达式的计算结果为 true
,则该语句执行 if
代码段;如果测试表达式的计算结果为 false
,则该语句执行 else
代码段。
if...else
语句的语法是:
if (condition) {
// codes in if block
}
else {
// codes in else block
}
if…else 语句如何工作?
看下图理解 Java if-else 语句的逻辑:
示例 3:Java if…else 语句
public class Main {
public static void main(String[] args) {
int number = 10;
// 检查 number 是否大于 0
if (number > 0) {
System.out.println("数字是正数。");
}
// 如果 number 不大于 0,执行以下代码
else {
System.out.println("The number is not positive.");
}
System.out.println("Statement outside if...else block");
}
}
输出
数字是正数。
Statement outside if...else block
在上面的例子中,我们有一个名为 number
的变量。测试表达式 number > 0
检查 number
是否大于 0
。
由于 number
的值是 10
,测试表达式的计算结果为 true
。因此,主体内的代码 if
被执行。
现在,更改 number
为负整数。比如 -5
:
int number = -5;
如果我们使用新的值运行程序,输出将是:
The number is not positive.
Statement outside if...else block
这里 number
值是 -5
, 因此测试表达式的计算结果为 false
。因此, else
主体内的代码被执行。
Java if…else…if 语句
在 Java 中,还可以使用 if…else…if 语句,类似于梯形图,可用于针对在多个不同条件下执行不同的代码。
if (condition1) {
// codes
}
else if(condition2) {
// codes
}
else if (condition3) {
// codes
}
.
.
else {
// codes
}
该语句从上到下依次执行 if
语句,只要当前 if
的测试条件为 true
,就执行当前的 if
代码块,然后跳出整个语句。如果所有测试表达式都是 false
,则执行 else
主体内的代码。
if…else…if 语句如何工作?
看下图理解 if…else…if 语句的逻辑:
示例 4:Java if…else…if 语句
public class Main {
public static void main(String[] args) {
int number = 0;
// 检查 number 是否大于 0
if (number > 0) {
System.out.println("数字是正数。");
}
// 检查 number 是否小于 0
else if (number < 0) {
System.out.println("数字是负数。");
}
// 0
else {
System.out.println("The number is 0.");
}
}
}
输出
The number is 0.
在上面的例子中,我们判断 number
是否是正数、负数或零。在这里,我们有两个条件表达式:
number > 0
- 判断number
是否大于 0number < 0
- 判断number
是否小于 0
例子中 number
的值是 0
, 所以这两个条件都评估为 false
。因此, else
语句被执行。
! 注意:Java 提供了一种称为三元运算符的特殊运算符,它是 if…else…if 语句的一种简写符号。要了解三元运算符,请访问Java 三元运算符。
Java 嵌套 if..else 语句
在 Java 中,也可以在 if..else
语句中使用 if...else
语句。它被称为嵌套 if...else
语句。
这是一个使用嵌套 if...else
语句查找 3 个数字中最大的一个程序。
示例 5:嵌套 if…else 语句
public class Main {
public static void main(String[] args) {
// 声明变量
Double n1 = -1.0, n2 = 4.5, n3 = -5.3, largest;
// 检查 n1 是否大于等于 n2
if (n1 >= n2) {
if (n1 >= n3) {
largest = n1;
}
else {
largest = n3;
}
} else {
if (n2 >= n3) {
largest = n2;
}
else {
largest = n3;
}
}
System.out.println("最大数:" + largest);
}
}
输出:
最大数:4.5
在上面的程序中,我们自己分配了变量的值以使其更容易。但是,在实际应用中,这些值可能来自用户输入数据、日志文件、表单提交等。