У меня есть один класс Human, который содержит два поля: age(int) и имя(строка). В eclipse я переопределяю методы hashCode() и equals() с этими двумя полями. Я также создаю Comparator на основе поля age.
Теперь я создаю объект TreeSet с Comparator возраста, а также два экземпляра (с разными значениями полей) класса Human. Затем я добавляю эти два объекта в набор, однако в наборе всегда только один объект.
Чтобы понять проблему, я распечатываю хэш-значение этих двух объектов и обнаруживаю, что они разные. Затем я тестирую их метод equals(), он выдает false, когда я сравниваю два экземпляра с разными значениями полей. Итак, теперь я не могу понять, почему TreeSet не может справиться (различить) проблему. Кто-нибудь может мне помочь? Большое спасибо !