在其它关系运算中如果其中一个或两个操作数为null则结果一定是false如下面示例代码(仍然使用上面定义的变量)
Comparison Resultabc >uvw
// false they are equal abc <def
// false def is null uvw <def
// false because def is null def >null
// false because right side is null uvw >null
// false because right side is null
移除空值
C#同时也提供一个新操作符??用来合并空值其语法格式如下
returnValue = first ?? second;
在这个语句中如果first为非null则first的值会被赋给returnValue如果first为null则second会被赋给returnValue注returnValue可以是Nullable类型也可以是非Nullable类型 如果要将一个Nullable变量的值赋给一个非Nullable变量可以用下面方法
int? ValA= ;
int? ValB = null;
int NewVarA = ValA ?? ;
int NewVarB = ValB ?? ;
上面这段代码运行完以后NewVarA的值为因为ValA的值不是null而NewVarB值变为 因为ValB为null这就允许我们利用一个null值将一个变量转变成一个默认值在上面的代码中这个默认值为
[] [] []