可能重复:
?? Null Coalescing Operator --> What does coalescing mean?
What do two question marks together mean in C#?
我在这里找不到这个问题所以我想我会问它。双重问号在C#中做了什么?
示例:
x = y ?? z;
答案 0 :(得分:61)
这是一个空的合并运算符。除非y为空,否则上面的方法状态x被赋予y的值,在这种情况下,它被赋予z的值。
答案 1 :(得分:16)
如果不为null,则使用y,否则使用z
答案 2 :(得分:14)
答案 3 :(得分:7)
如果y为null,则x将设置为z。
答案 4 :(得分:6)
如果值y为null,则赋值z。
例如:
x = Person.Name ?? "No Name";
如果name为null,则x将具有值“No Name”
答案 5 :(得分:1)
答案 6 :(得分:1)
.Net framework 2.0以后允许空值为Nullable值类型。
在这种情况下,它说 如果x具有某个值(即非空)或等于z ,则x等于y