如何使用Java8流从具有键列表的Map中获取值

时间:2019-04-08 07:52:19

标签: java java-8

我有一个映射“ M”和一个列表“ L”,现在我想使用“ L”中可用的键列表从该映射“ M”中获取值。我想使用Java 8 Stream概念可以帮助任何人。

我编码为打印这些值,但是我需要将值放入列表中

list.stream()。forEach(s-> {System.out.println(map.get(s));});

1 个答案:

答案 0 :(得分:8)

mapList中的每个元素转换为Map中的相应值,并收集到List中:

List<String> values =
    list.stream()
        .map(map::get)
        .collect(Collectors.toList());

您可能要考虑消除null值(这是由于Map中不存在的键所致)。