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

标签 java java-8

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

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

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

最佳答案

mapList 的每个元素到 Map 中对应的值,并收集到 List:

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

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

关于java - 如何使用 Java8 流从带有键列表的 Map 中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55568593/

相关文章:

java - 与 SqlServer 的连接未在 for 循环 java 中关闭

java - 错误 p :ajax update

java - 图像和二进制方法返回类型

Java - 大文件中的重复字数

java - 如何根据列表中的元素对映射中的键进行排序

java - 从 lambda 抛出异常

java - 如何在 JodaTime 中将周数设为负数?

java - 如何同步访问 ehcache、memcached 和其他键值存储?

java - Lambda 表达式在 Java 8 中不起作用?

java - 如何使用 JAVA8 流从类中获取所需的值