【发布时间】:2016-12-05 07:08:31
【问题描述】:
作为C#的新手想知道为什么C#的Object类有两个Equals方法和下面的签名。
public virtual bool Equals(object obj);
public static bool Equals(object objA, object objB);
而在 Java 中只有 一个 equals 方法。
【问题讨论】:
-
@MickyD 我也阅读了文档,但两者之间并没有太大区别。
-
stackoverflow.com/questions/1451454/… - 这不是完全重复,但应该给你正确的方向。
-
因为您可能想要比较两个可以为空的值。
A.Equals(B)出现异常,其中 A 为空。所以你可以使用object.Equals(A, B)