Ответ 1
Я думаю, flatMap()
- это то, что вы ищете.
Например:
List<AClass> allTheObjects = map.values()
.stream()
.flatMap(listContainer -> listContainer.lst.stream())
.collect(Collectors.toList());
У меня следующая ситуация.
Map<Key, ListContainer> map;
public class ListContainer{
List<AClass> lst;
}
Мне нужно объединить все списки lst
из объектов ListContainer
с карты Map
.
public static void main(String args[]){
List<AClass> alltheObjectsAClass = map.values().stream(). // continue....
}
Любая идея, как, используя Java 8 stream API?
Я думаю, flatMap()
- это то, что вы ищете.
Например:
List<AClass> allTheObjects = map.values()
.stream()
.flatMap(listContainer -> listContainer.lst.stream())
.collect(Collectors.toList());
Альтернатива: Stream.concat()
Stream.concat(map.values().stream(), listContainer.lst.stream())
.collect(Collectors.toList()