Java 三元运算符

JavaJavaBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在本实验中,你将学习如何在 Java 中使用三元运算符(ternary operator)来替代 if-else 语句。三元运算符用于在一行中编写条件语句,使代码更加简洁和易读。你将学习如何使用三元运算符以及如何嵌套它。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("`Java`")) -.-> java/BasicSyntaxGroup(["`Basic Syntax`"]) java/BasicSyntaxGroup -.-> java/operators("`Operators`") java/BasicSyntaxGroup -.-> java/booleans("`Booleans`") java/BasicSyntaxGroup -.-> java/if_else("`If...Else`") java/BasicSyntaxGroup -.-> java/output("`Output`") subgraph Lab Skills java/operators -.-> lab-117991{{"`Java 三元运算符`"}} java/booleans -.-> lab-117991{{"`Java 三元运算符`"}} java/if_else -.-> lab-117991{{"`Java 三元运算符`"}} java/output -.-> lab-117991{{"`Java 三元运算符`"}} end

三元运算符的语法

三元运算符是 if-else 语句的一种简写形式。其语法如下:

variable = (condition) ? expression1 : expression2;

其中,condition 是被评估的布尔表达式,如果 conditiontrue,则将 expression1 的值赋给 variable;如果 conditionfalse,则将 expression2 的值赋给 variable

让我们看一个例子:

int num1 = 50;
int num2 = 100;
int result;

result = (num1 > num2) ? num1 : num2;
System.out.println(result);

输出:

100

在上面的例子中,如果 num1 大于 num2,则 result 的值为 num1,否则 result 的值为 num2

使用三元运算符替代 if-else 语句

我们可以使用三元运算符来替代 if-else 语句。以下是一个使用 if-else 语句判断一个人是否具有投票资格的示例代码:

int age = 18;
String message;

if (age >= 18) {
    message = "You are eligible to vote";
} else {
    message = "You are not eligible to vote";
}

System.out.println(message);

输出:

You are eligible to vote

我们可以使用三元运算符将上述代码替换为一行代码,如下所示:

int age = 18;

String message = (age >= 18) ? "You are eligible to vote" : "You are not eligible to vote";

System.out.println(message);

输出:

You are eligible to vote

嵌套三元运算符

我们还可以嵌套三元运算符来编写复杂的条件语句。以下是一个使用嵌套 if-else 语句判断数字符号的示例代码:

int num = -10;
String sign;

if (num > 0) {
    sign = "Positive";
} else if (num < 0) {
    sign = "Negative";
} else {
    sign = "Zero";
}

System.out.println(sign);

输出:

Negative

我们可以使用嵌套三元运算符将上述代码替换为一行代码,如下所示:

int num = -10;

String sign = (num > 0) ? "Positive" : (num < 0) ? "Negative" : "Zero";

System.out.println(sign);

输出:

Negative

总结

在本实验中,你学习了如何在 Java 中使用三元运算符替代 if-else 语句。你还学习了如何嵌套三元运算符以处理复杂的条件语句。然而,三元运算符有一些局限性,仅适用于简单的 if-else 语句。

您可能感兴趣的其他 Java 教程