2014-01-12 4 views
0

Пытается сохранить слова из .txt-файла в наборе. Никогда не использовались комплекты раньше.Java, Устанавливает конкретные HashSet TreeSet

Set<Word> set = new HashSet<Word>(); 

При сохранении в HashSet я получаю размер до 241. Если я изменю выше

Set<Word> set = new TreeSet<Word>(); 

и больше ничего в коде, я получаю размер до 231. Есть ли какая-то Естественная причина этого в разных наборах?

+4

Можем ли мы увидеть ваш класс «Слово»? Оправдывает ли он методы 'hashCode' и' equals'? – Pshemo

+0

Да, это был метод равенства, thx! – user3185667

ответ

6

Возможно, вы не делаете Comparable.compareTo в соответствии с Object.equals/hashCode. Это или hashCode не соответствует equals. Возможно, на самом деле не переопределено hashCode - используйте @Override, чтобы убедиться.

+0

Да, это была моя реализация equals-method, thx alot! знак равно – user3185667

Смежные вопросы