Java if...else 语句
Java if...else 语句
在本教程中,您将通过示例了解使用 Java if 和 if...else 语句的控制流语句。
在编程中,我们使用if..else
在多个备选方案中运行一段代码的语句。
例如,根据学生获得的百分比分配成绩(A、B、C)。
- 如果百分比高于 90 , 分配等级 A
- 如果百分比高于 75 , 分配等级 B
- 如果百分比高于 65 , 分配等级 C
1. Java if(if-then) 语句
if-then 的语法 声明是:
if (condition) {
// statements
}
这里,条件 是一个布尔表达式,例如 age >= 18
.
- 如果 条件 计算结果为
true
, 语句被执行 - 如果 条件 计算结果为
false
, 语句被跳过
if 语句的工作
<图>
示例一:Java if 语句
class IfStatement {
public static void main(String[] args) {
int number = 10;
// checks if number is less than 0
if (number < 0) {
System.out.println("The number is negative.");
}
System.out.println("Statement outside if block");
}
}
输出
Statement outside if block
在程序中,number < 0
是 false
.因此,括号内的代码被跳过 .
注意: 如果您想详细了解测试条件,请访问 Java 关系运算符和 Java 逻辑运算符。
我们也可以使用Java Strings作为测试条件。
示例 2:Java 如果使用字符串
class Main {
public static void main(String[] args) {
// create a string variable
String language = "Java";
// if statement
if (language == "Java") {
System.out.println("Best Programming Language");
}
}
}
输出
Best Programming Language
在上面的例子中,我们比较 if
中的两个字符串 块。
2. Java if...else (if-then-else) 语句
if
如果测试表达式的计算结果为 true
,则语句执行某段代码 .但是,如果测试表达式被评估为 false
,它什么也没做。
在这种情况下,我们可以使用可选的 else
堵塞。 else
主体内的语句 如果测试表达式被评估为 false
,则执行块 .这被称为 if-...else Java中的语句。
if...else 的语法 声明是:
if (condition) {
// codes in if block
}
else {
// codes in else block
}
在这里,程序将执行一项任务(if
中的代码 块)如果条件是 true
和另一个任务(else
中的代码 块)如果条件是 false
.
if...else 语句如何工作?
<图>
示例 3:Java if...else 语句
class Main {
public static void main(String[] args) {
int number = 10;
// checks if number is greater than 0
if (number > 0) {
System.out.println("The number is positive.");
}
// execute this block
// if number is not greater than 0
else {
System.out.println("The number is not positive.");
}
System.out.println("Statement outside if...else block");
}
}
输出
The number is positive. Statement outside if...else block
在上面的例子中,我们有一个名为 number 的变量 .这里,测试表达式 number > 0
检查是否 number 大于0。
由于 number 的值 是 10 ,测试表达式的计算结果为 true
.因此代码在 if
的主体内 被执行。
现在,更改 number 的值 为负整数。假设 -5 .
int number = -5;
如果我们使用 number 的新值运行程序 ,输出将是:
The number is not positive. Statement outside if...else block
这里,number 的值 是 -5 .所以测试表达式的计算结果为 false
.因此 else
主体内的代码 被执行。
3. Java if...else...if 语句
在 Java 中,我们有一个 if...else...if 梯形图,可用于在多个其他块中执行一个代码块。
if (condition1) {
// codes
}
else if(condition2) {
// codes
}
else if (condition3) {
// codes
}
.
.
else {
// codes
}
这里,if
语句从上到下执行。当测试条件为true
时 , 该 if
正文内的代码 块被执行。并且,程序控制跳转到 if...else...if 之外 梯子。
如果所有测试表达式都是 false
, else
体内的代码 被执行。
if...else...if 阶梯如何工作?
<图>
示例 4:Java if...else...if 语句
class Main {
public static void main(String[] args) {
int number = 0;
// checks if number is greater than 0
if (number > 0) {
System.out.println("The number is positive.");
}
// checks if number is less than 0
else if (number < 0) {
System.out.println("The number is negative.");
}
// if both condition is false
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 三元运算符。
4. Java 嵌套 if..else 语句
在 Java 中,也可以使用 if..else
if...else
中的语句 陈述。它被称为嵌套 if...else
声明。
这是一个查找 3 中最大的程序的程序 使用嵌套 if...else
的数字 声明。
示例 5:嵌套 if...else 语句
class Main {
public static void main(String[] args) {
// declaring double type variables
Double n1 = -1.0, n2 = 4.5, n3 = -5.3, largest;
// checks if n1 is greater than or equal to n2
if (n1 >= n2) {
// if...else statement inside the if block
// checks if n1 is greater than or equal to n3
if (n1 >= n3) {
largest = n1;
}
else {
largest = n3;
}
} else {
// if..else statement inside else block
// checks if n2 is greater than or equal to n3
if (n2 >= n3) {
largest = n2;
}
else {
largest = n3;
}
}
System.out.println("Largest Number: " + largest);
}
}
输出 :
Largest Number: 4.5
在上面的程序中,我们自己为变量赋值以使这更容易。
然而,在实际应用中,这些值可能来自用户输入数据、日志文件、表单提交等。
java