【发布时间】:2017-09-22 02:27:15
【问题描述】:
我看到很多关于如何在 C#7 中使用模式匹配的示例。一切看起来都不错。但是,我有一个问题,我似乎无法找到答案。
假设你有以下表达式:
if (a is null)
我的问题是:在 C#7 中是否更喜欢使用模式匹配而不是引用或值相等?
所以不要写:
if (a == null)
或:
if (a.Equals(null))
或:
if (object.Equals(a, null))
我怀疑a is null 会生成类似于最后一个表达式的内容。但是一般情况下会更喜欢切换到模式匹配吗?
如果我错了,请纠正我,这是一个主要基于意见的问题,但我似乎无法找到支持这一点的明确答案。
【问题讨论】:
-
绝对不要写
a.Equals(null),如果a是null就会抛出,不返回true。
标签: c# pattern-matching c#-7.0