Как определить критерий для повторяющихся экземпляров объекта в Java? - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть класс с некоторыми первичными полями, которые являются обязательными и обязательными для всех его конструкторов, а затем с другими вторичными полями, которые могут быть по умолчанию равны пустым значениям, если они не инициализируются. Комбинация первичных полей - это то, что идентифицирует каждый экземпляр класса как уникальный и отдельный объект, так что другой экземпляр с такими же первичными полями может считаться дубликатом, даже если у него есть разные вторичные поля .

Проверка на наличие дублирующихся экземпляров необходима для хранения объектов в структуре, подобной списку, которая не допускает дублирование, и выполняется путем переопределения equals() (которое, например, используется ArrayList.contains()) для сделать так, чтобы он смотрел только на первичные поля, полностью игнорируя все вторичные.

Это правильный подход?

1 Ответ

0 голосов
/ 03 сентября 2018

Да, используйте все ваши основные переменные для создания хеш-кода в hashCode (). Затем используйте условие if или хэш-код в вашем equals ().

...