Имеется List объектов класса Person
public class Person {
String name1;
String name2;
String name3;
String birthdate;
String address;
}
Как из этого List получить другой, но с некоторыми полями, к примеру, name1, name2 и address... Желательно, используя Stream API.
Можно сделать так:
List<String> fields = persons.stream()
.flatMap(p -> Stream.of(p.name1, p.name2, p.address))
.collect(Collectors.toList());
В этом случае и на выходе список будет, и тип у него будет String, а не Object.
Решил вопрос следующим образом:
Object[] o = persons.stream()
.map(r -> Arrays.asList(r.getName1(), r.getName2(),r.getAddress()))
.toArray();
Быть может, есть решение получше ?
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости