【发布时间】:2011-05-13 18:05:55
【问题描述】:
只是为了好奇/方便:C# 提供了两个我知道的很酷的条件表达式功能:
string trimmed = (input == null) ? null : input.Trim();
和
string trimmed = (input ?? "").Trim();
对于我经常遇到的情况,我想念另一个这样的表达方式:
如果输入引用为空,则输出应为空。否则,输出应该是访问输入对象的方法或属性的结果。
我在第一个示例中就是这样做的,但 (input == null) ? null : input.Trim() 非常冗长且难以阅读。
这种情况还有其他条件表达式吗,或者我可以优雅地使用?? 运算符吗?
【问题讨论】:
-
正如 Jon 下面提到的,我们现在可以在 c# 6.0 中使用空条件运算符,例如 theText?.Trim()
标签: c# .net conditional-operator conditional-expressions