C#中的三元表达式

2024-12-27 17:56:48
推荐回答(4个)
回答1:

age1 > age2 ? “第一个大” :“ 第二个大”;
首先,在汉字上加上分号,表示是字符串。
这个三元表达式要分成三个部分看,
第一:问号之前的age1 > age2 ,这是条件
如果条件为真,则这个表达式的结果为冒号之前的“第一个大”,
如果条件为假,则这个表达式的结果为冒号之后的“ 第二个大”

回答2:

表达式1 ? 表达式 2 : 表达式 3

其中表达式 1、表达式2、表达式3,既可以是一个简单的表达式,又可以是由各种运算符组成的复合表达式。

计算过程很好理解:
先求表达式1的值, 如果为真, 则求表达式2 的值并把它作为整个表达式的值。 如果表达式1 的值为假, 则求表达式3 的值并把它作为整个表达式的值。

用法:
int max = age1 > age2 ? age1 : age2;
最小值可以有2种写法,都挺容易理解的
int min = age1 > age2 ? age2: age1;
int min =age1 < age2 ? age1: age2;

回答3:

参数一 逻辑运算符 参数二 ? 条件成立 : 条件不成立
比如:
string prm1="4";
string prm2="5";
string prm3 = prm1==prm2?"yes":"no"
// 此时prm3值为"no".
age1 > age2 ? 第一个大 : 第二个大;
[第一个大]|[第二个大]应该加上引号""
否则为汉字,编译器无法认识.
string result=age1 > age2 ? "第一个大" : "第二个大";

回答4:

(age1 > age2) ? "第一个大" : "第二个大";