相关疑难解决方法(0)

为什么使用GetHashCode()而不是Equals()?

HashSet<T>.Add首先比较结果GetHashCode.如果它们是相同的,它会调用Equals.

现在,我的理解是为了实现GetHashCode,必须用对象的字段来完成某些事情.一个简单的示例实现可以在被覆盖的System.Object.GetHashCode的最佳算法是什么?.

在我的测试中,在填充随机数据的1.000.000对对象上进行比较,两者之间的性能或多或少相等.GetHashCode在链接示例中实现,Equals只需调用Equals所有字段.那么为什么要用GetHashCodeEquals

.net performance equals gethashcode

10
推荐指数
2
解决办法
2105
查看次数

标签 统计

.net ×1

equals ×1

gethashcode ×1

performance ×1