三元运算符“?:”,语法为:条件表达式?表达式1:表达式2;
该操作首先求出条件表达式的值(bool类型),为true时调用表达式1,为flase时调用表达式2。其逻辑为:“如果为真执行第一个,否则执行第二个。”
语法
test ? expression1 : expression2
test
任何 Boolean 表达式。
expression1
test 为 true 时返回的表达式。可能是逗点表达式。
expression2
test 为 false 时返回的表达式。可能是逗点表达式。
实例
代码如下 | 复制代码 |
a=3>4?3:4;输出为4。 a=3<4?3:4;输出为3。
|
实例
代码如下 | 复制代码 |
int lenth = 10; string s ; s = (lenth>16? "jihua.cnblogs.com" : "计划"); Console.WriteLine(s); |
其中condition是要计算的Boolean型表达式,true_value是condition为true时返回的值,false_value是condition为false时返回的值。jihua.cnblogs.com
在此例中,如果晚于下午 6 时,则创建一个包含 "Good evening." 的字符串。使用 if...else 语句的等效代码如下:
代码如下 | 复制代码 |
var now = new Date(); var greeting = "Good"; if (now.getHours() > 17) greeting += " evening."; else greeting += " day."; |
恰当地使用三元运算符,可以使程序非常简洁。
时间: 2024-10-07 04:26:38