В нашем проекте мы используем API базы данных на основе прокси (Tinkerpop Frames), поэтому у нас много циклов, таких как:
List<Link> links = new LinkedList<>();
for (LinkModel model : obj.getLinks())
{
Link l = new Link(model.getLink(), model.getDescription());
links.add(l);
}
Я хотел бы избавиться от них по двум причинам:
- Чтобы удалить шаблонный код
- Для больших списков могут возникнуть проблемы с памятью.
Есть ли хороший способ получить Iterable
, который берет от другого и преобразует с использованием данного метода? Что я хотел бы сделать, так это:
Iterable<Link> links_ = new IterableConverter<LinkModel, Link>(obj.getLinks()){
public Link from(LinkModel m){ return new Link(m.getLink(), m.getDescription()); }
};
Я думаю, в Java 8 есть что-то подобное. Мне нужно это для Java 7.
Iterables.transform()
? - person Andy Turner   schedule 21.04.2016