可能重复:
在 C# 中,两个问号一起意味着什么?
我刚刚遇到下面的代码,并不确定它的含义并且无法谷歌搜索,因为谷歌省略了??
int? x = 32;
int y = x ?? 5;
第二行是某种 if else 语句,是什么??
意思
可能重复:
在 C# 中,两个问号一起意味着什么?
我刚刚遇到下面的代码,并不确定它的含义并且无法谷歌搜索,因为谷歌省略了??
int? x = 32;
int y = x ?? 5;
第二行是某种 if else 语句,是什么??
意思
它被称为空合并运算符。
如果左侧的??
值为null
,则使用右侧的值, ??
否则使用左侧的值。
展开:
y = x == null ? 5 : x
或者
if(x == null)
y = 5
else
y = x
if(x == null)
y = 5
else
y = x
运算符与变量集合一起使用,??
并计算第一个非空变量的值。例如,考虑以下代码:
int? x = null;
int? y = null;
int? z = null;
y = 12;
int? a = x ?? y ?? z;
的值a
将是 12,因为y
它是语句中第一个具有非空值的变量。
是的,这是 if else 语句。看看这个 URL http://www.webofideas.co.uk/Blog/c-sharp-double-question-mark-syntax.aspx