【发布时间】:2020-06-05 19:03:43
【问题描述】:
我正在尝试使用映射将一组键映射到字符串映射到整数集。理想情况下,我想获取所有值集并将它们收集到一个集合中。
假设我有:
Map<String, List<Integer>> keyValueMap = new HashMap<>();
Set<String> keys = new HashSet<>();
Set<String> result = new HashSet<>();
我试过了:
result.addAll(keys.stream().map(key -> keyValueMap.get(key)).collect(Collectors.toSet());
这给我带来了一个错误,说 addAll() 不适用于 Set> 类型。我尝试用 flatMap() 替换 map(),但如果这是解决方案,我似乎无法获得正确的语法。
实现这项工作的正确语法是什么?
谢谢!
【问题讨论】:
标签: java java-stream