检查null或> 0的简洁方法

时间:2019-02-14 16:36:40

标签: c#

对于C#来说,它很陌生,我想知道是否有一种比下面所示更简洁的方法来检查ticketID是否为null或大于0。

int? ticketID = someOtherVariable;
if (ticketID == null || ticketID > 0)
{
    // do stuff
}

1 个答案:

答案 0 :(得分:1)

一种更简洁的书写方式是,在括号内使用null coalescing operator??)来检查该值是否为空,并且该值的右侧大于零运算符,然后将该运算结果与零进行比较。

这样,如果??为空,1操作将返回ticketId(以使我们以后的比较返回true),否则它将返回ticketId.Value ,然后将其与0进行比较:

if ((ticketId ?? 1) > 0)
{
    // do stuff
}