Java Set не различает разные объекты

У меня есть один классЧеловек, который содержит два поля,возраст (инт), иимя (Строка). С затмением я переопределяюхэш-код()иравно()метод с этими двумя полями. Я также создаю компаратор на основевозрастполе.

Теперь я создаю объект TreeSet с Comparator возраста, а также два экземпляра (с разными значениями полей )класса Human . Затем я добавляю эти два объекта в набор, однако в наборе всегда только один объект.

Чтобы понять проблему, я распечатываю хэш-значение этих двух объектов и обнаруживаю, что они разные. Затем я проверяю ихравно()метод, он выводит false , когда я сравниваю два экземпляра с разными значениями полей. Итак, теперь я не могу понять, почему TreeSet не может справиться с (дифференцированием )проблемы. Кто-нибудь может мне помочь? Большое спасибо !

0
задан Ensom Hodder 12 July 2012 в 14:04
поделиться