条件语句检查空

Cod*_*ody 2 c# if-statement unary-operator c#-4.0

我正在试图弄清楚如何使用简短的一行条件语句.

如果此日期不为null,请将过滤器添加到当前过滤器列表:

fromDt ?? filters.Add(FilterType.DateFrom, fromDt);

有没有办法做到这一点?我知道我能做到..

(fromDt != null) ? "something" : "something_else",但我不需要'else',并且真的想使用??运算符进行空检查.

Jam*_*nen 7

这有什么问题?

if (fromDt != null) filters.Add(FilterType.DateFrom, fromDt);
Run Code Online (Sandbox Code Playgroud)

首先,您的代码应该是可读的.即使你的??代码有效,我也不知道它在第一眼就看到了什么.

  • 实际上,首先你的代码应该可行.但只有这种条件背后最微小的smidgen是它应该易读并且易于其他人维护. (3认同)