c# GetHashCode用于存储

本文关键字:存储 用于 GetHashCode | 更新日期: 2023-09-27 18:01:47

我想存放一组对象,特别是具有x和y值的点类型,以便我可以计算存在于点集中的每个x, y对上的点的数量。x和y的最大值是[-1000,1000],因此很容易为每个可能的点生成唯一的哈希码。

对于实际的分组过程,可以使用Dictionary来完成吗?当我添加/查找一个点到字典时,GetHashCode是否用于此?

有更好的开始方式吗?

c# GetHashCode用于存储

是的,除非你在构造Dictionary实例时传递一个自定义实例来提供哈希码并检查相等性,否则你的类型将使用GetHashCodeEquals方法。

要提供自定义散列机制,您可以简单地覆盖GetHashCodeEquals