我正在考虑为给定对象实现我自己的自定义哈希码......并将其key
用作我的字典。由于 2 个对象可能(很可能)具有相同的哈希码,我应该覆盖哪些额外的运算符,以及该覆盖(从概念上)应该是什么样子?
myDictionary.Add(myObj.GetHashCode(),myObj);
对比
myDictionary.Add(myObj,myObj);
换句话说,字典是否使用以下组合来确定唯一性以及将对象放置在哪个存储桶中?
哪些比其他更重要?
- 哈希码
- 等于
- ==
- 相比于()
是否仅在 SortedDictionary 中需要 compareTo?