Как получить список вложенных элементов в коллекции в Java 8? - PullRequest
0 голосов
/ 01 мая 2018

У меня есть объект, как показано на рисунке ниже. Я хочу создать из него список, в котором просто хранятся значения, сохраненные в первом индексе для каждого из этих вложенных списков. Что-то вроде {domain1.com, domain2.com} в качестве вывода.

Я хочу сделать это, используя лямбда-выражения Java 8. Я думал об использовании flatmap как этот sanList.stream().flatMap(x -> x.get(1).stream()), но он не компилируется.

Как мне это сделать?

enter image description here

1 Ответ

0 голосов
/ 01 мая 2018

Вам не нужно flatMap, скорее всего map сделает свое дело. Попробуйте это,

List<List<String>> nestedList = Arrays.asList(Arrays.asList("1", "domain1.com"),
        Arrays.asList("2", "domain2.com"));
List<String> values = nestedList.stream().map(nl -> nl.get(1)).collect(Collectors.toList());
System.out.println(values);
...