我需要为我的某种类型覆盖Equals()方法,但似乎我还必须覆盖GetHashCode()方法。
我不确定:
如果我有一个动物类型,并且我有两个实例的动物,它们基本上是相同的(相等)猫;像:
Animal cat_01 = new Animal("Kitty", "Pink");
Animal cat_02 = new Animal("Kitty", "Pink");
我应该实现GetHashCode()方法, 以便对于内存中不同引用的cas_01和cat_02返回相同的值吗?
这是GetHashCode()方法应该工作的方式吗?
谢谢
==
。如果您这样做,还应将其设计为不可变。另请参见MattDavey的答案。 - H H