写null联合的对立面最简洁的方法是什么

本文关键字:简洁 方法 是什么 对立面 null | 更新日期: 2023-09-27 18:08:17

可能重复:
是否存在“相反";到空合并运算符?(…用任何语言?(

这里有没有更简洁的第三行写法?

int? i = GetSomeNullableInt();
int? j = GetAnother();
int k = i == null ? i : j;

我知道零合并算子,但我想要的行为与此相反:

int k == i ?? j;

写null联合的对立面最简洁的方法是什么

Sneaky-我回复时你编辑了它。:(

我认为没有比这更简洁的写作方式了。但是,我会使用"HasValue"属性,而不是==null。这样更容易看出你的意图。

int? k = !i.HasValue ? i : j; 

(BTW-k也必须可以为null。(

在C#中,您所拥有的代码是编写所需内容的最简洁的方法。

那个运算符的意义是什么?用例非常有限。如果您正在寻找一个不必使用临时变量的单行解决方案,那么首先就不需要它。

int k = GetSomeNullableInt() == null ? null : GetAnother();