Как фильтровать объекты из списка по уникальности свойств объекта?JAVA

Программисты JAVA общаются здесь
Anonymous
Как фильтровать объекты из списка по уникальности свойств объекта?

Сообщение Anonymous »

У меня есть список объектов Person. Каждый объект Person имеет свойство int id, а также некоторые другие. В настоящее время мой список объектов Person содержит несколько объектов с одинаковым идентификатором. Я хочу отфильтровать список, чтобы каждый идентификатор существовал в списке не более одного раза.
Например. список

Код: Выделить всё

Person(1),
Person(1),
Person(2),
Person(2),
Person(3),
Person(1)
должно выглядеть

Код: Выделить всё

Person(1),
Person(2),
Person(3)
В Ruby это просто personList.uniq { |person| person.id
Решение методом грубой силы состоит в том, чтобы поместить каждый идентификатор в набор и проверить набор на наличие каждого элемента списка, но мне было интересно если есть более элегантное решение.

Подробнее здесь: https://stackoverflow.com/questions/787 ... t-property

Вернуться в «JAVA»