[英]C# multiple sequence ? conditional operator
我考试了,看到一个类似的问题。
var b = (1==2) ? (1==1) ? (2==1) ? "A" : "B" : "C" : "D";
b是什么,它在这样的条件下如何工作?
谢谢。
三元运算符的行为如下:
该声明
variable = condition ? value1 : value2
相当于
if (condition)
{
variable = value1;
}
else
{
variable = value2;
}
所以就你而言
var b = (1==2) ? (1==1) ? (2==1) ? "A" : "B" : "C" : "D";
只是几个嵌套的三元运算符,与
var b;
if (1==2)
{
if (1==1)
{
if (2==1)
{
b = "A";
}
else
{
b = "B";
}
}
else
{
b = "C";
}
}
else
{
b = "D";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.