我有一个HashSet,它有自己的EqualityComparer,但是我想知道在检查每个元素之前是否使用了两个集合的简单计数?
我以为我能够在Reflector中为自己回答这个问题,但我找不到任何等于Equals的内容。
干杯,
Berryl
编辑==========
正如汉斯所说,它是我感兴趣的两个集合的比较,作为在具有HashSet作为属性的类中重写Equals的一部分?
答案 0 :(得分:3)
你正在混淆它。实现自己的IEqualityComparer<>用于比较放在HashSet中的元素非常有用。只有在想要比较集时,Count属性才会有用。两件非常不同的事情。没有Equals()的默认实现。如果可能,HashSet.SetEquals()方法确实首先检查Count属性。