Equals() 的 C# 简写,当两个参数都可以为空时
本文关键字:参数 两个 都可以 简写 Equals | 更新日期: 2023-09-27 18:32:26
一个简单的问题:
我想使用虚拟 Equals() 方法(不是 ==
)比较两个对象。两者都可以为空。
我应该重复这一连串的话吗:
if ((left == null && right == null) || (left != null && left.Equals(right)) {
}
还是有更优雅的成语来形容这种情况?
是的:
if (object.Equals(left, right))
甚至没有明确表示它正在调用静态方法:
if (Equals(left, right))
(就个人而言,我更喜欢额外的清晰度。
静态object.Equals
方法没有非常好的文档,但它完全符合您的要求:)