繁体   English   中英

c# - 条件运算符表达式(连续几个)

[英]c# - conditional operator expression (a few in a row)

bool isGeneric = variableA != null ? variableB != null ? false : true : true;

我遇到了这条线。 任何人都可以为我破译这一行/将它们分组到括号中吗?

它是三元中的三元:

bool isGeneric = variableA != null 
    ? (variableB != null ? false : true) 
    : (true);

如果variableA不等于 null,则检查第一个条件,否则返回 true。 在第一个条件中,如果variableB不为 null,则返回false如果为,则返回true

您还可以将其转换为以下 if/else 语句:

bool isGeneric = false;
if (variableA != null) 
{
    if (variableB != null)
        isGeneric = false;
    else 
        isGeneric = true;
}
else
    isGeneric = true;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM