HashSet равенство c # - PullRequest
       32

HashSet равенство c #

0 голосов
/ 01 сентября 2010

У меня есть HashSet с собственным EqualityComparer, но мне интересно, используется ли простой счетчик обоих наборов перед проверкой каждого элемента?

Я думал, что смогу ответить на этот вопрос для себя в Reflector, но не смог найти там никакого переопределения Equals.РЕДАКТИРОВАТЬ ==========

Как отметил Ханс, это сравнение двух интересующих меня наборов как части переопределения Equals в классе, в котором HashSet имеетсвойство

1 Ответ

3 голосов
/ 01 сентября 2010

Вы смешиваете это. Реализация собственного IEqualityComparer <> полезна для сравнения элементов , которые вы помещаете в HashSet. Свойство Count будет полезно только в том случае, если вы хотите сравнить sets . Две очень разные вещи. Не существует реализации по умолчанию Equals (). Метод HashSet.SetEquals () действительно сначала проверяет свойства Count, если это возможно.

...