1
У меня есть, например, List<Cat>
с классом Cat
, содержащий поле типа Tail
. Я хочу, чтобы List<Tail>
обеспечивал живой просмотр хвостов кошек из первого списка. Есть ли известная реализация List, которая принимает другой список и функцию отображения, такую как cat -> cat.tail
?Коллекция Java, которая отображает каждый элемент в поле этого элемента
Нет там нет такой вещи доступны. Все, что вы можете получить, это _snapshot_, извлекая все хвосты у всех кошек, но это не будет обновляться, если один кот «обновит» свой хвост на другой (т. Е. «Cat.tail = new Tail();')). – Tom
Что вам нужно сделать, это расширить 'AbstractList' и реализовать' get (int) 'и' size() '. –
@Tom Это, естественно, само обновление, если реализация List делегирует все методы базовому «списку» с функцией отображения «cat -> cat.tail», о которой я упомянул. –
user1854611