Java 中的问号和冒号
Mohammad Irfan
2023年10月12日
本教程介绍了如何在 Java 中使用问号和冒号运算符,并列出了一些示例代码来理解该主题。
问号和冒号运算符在 Java 中统称为三元运算符,因为它们在三个操作数上起作用。
它是 Java 中 if ... else
语句的简捷解决方案,可以用作决策的单行语句。让我们看一些例子。
在 Java 中使用问号和冒号运算符
三元运算符包括三个部分。第一个是返回布尔值的条件表达式。第二和第三个是冒号之前和之后的值。如果条件表达式的计算结果为 true
,则返回冒号之前的值;否则,它返回冒号之后的值。其语法如下。
condition ? value1 : value2;
请参见下面的示例。
public class SimpleTesting {
public static void main(String[] args) {
int a = 10;
int b = 20;
boolean result = a > b ? true : false;
System.out.println(result);
}
}
输出:
false
我们可以从三元运算符获取任何类型的返回值。在下面的示例中,我们传递字符串值,并根据条件获取返回的字符串值。
public class SimpleTesting {
public static void main(String[] args) {
int a = 10;
int b = 20;
String result = a > b ? "True" : "False";
System.out.println(result);
}
}
输出:
False
下面的示例是 Java 中三元运算符的用例。我们使用此单行条件语句来检查给定的字符串是否为小写,如果字符串为小写,则将其转换为大写。否则,它返回原始字符串。
public class SimpleTesting {
public static void main(String[] args) {
String str = "mango";
String result = str.equals(str.toLowerCase()) == true ? str.toUpperCase() : str;
System.out.println(result);
}
}
输出:
MANGO
这是三元运算符的另一个用法,其中我们检查给定的整数是否为正整数,并返回字符串值。请参见以下示例。
public class SimpleTesting {
public static void main(String[] args) {
int val = 10;
String result = val > 0 ? "Positive Integer" : "Negative Integer";
System.out.println(result);
}
}
输出:
Positive Integer
在 Java 中使用嵌套问号和冒号运算符
在此示例中,我们使用嵌套的三元运算符检查是否可以像使用 if ... else
语句那样执行此操作。在这里,我们首先检查给定的整数是否为正整数,然后检查它是否位于指定范围之间并返回字符串值。请参见以下示例。
public class SimpleTesting {
public static void main(String[] args) {
int val = 10;
String result = val > 0 ? (val > 5) ? "Greater Than 5" : "Less Than 5" : "Negative Integer";
System.out.println(result);
}
}
输出:
Greater Than 5