简短问题
如何为Array
实现GetHashCode
。
细节
我有一个对象,覆盖了Equals
,检查:
this.array[n] == otherObject.array[n]
对于数组中的所有n
。
自然地,我应该实现相应的GetHashCode
。我想知道是否有 .NET 的方法可以做到这一点,或者我应该自己实现,例如:
hash = hash ^ array[n]
澄清
我的对象包含一个数组,我对数组元素的GetHashCode
感兴趣。我的数组等效性代码只是举例说明-就像我的问题所说,但也许我没有表达清楚,我对GetHashCode
(而不是Equals
)感兴趣。我说我应该自然地实现补充GetHashCode
,因为在重写Equals
(为了使Dictionary
等正确运行)后,.NET要求实现此功能。谢谢。
GetHashCode()
或Equals()
。 - Drakenn
做this.array[n].Equals(otherObject.array[n])
? - Mathias R. JessenSequenceEqual
扩展。 - Mike Debelaarray
字段。 - Michael Liu