在Java 8中具有Set的映射,如何将所有值放在一组中?

use*_*218 2 java dictionary set java-8 java-stream

我有一个Map<String, Set<String>>。我希望Set<String>使用streams API 在新的地图中获取所有值。我能够得到一个Set<Set<String>>,但是我想要的是将我的地图中所有集合的所有值放在一个集合中。使用流有可能吗?

提前致谢。

Not*_* JD 5

干得好:

Set<String> allStrings = map.values()
   .stream()
   .flatMap(Set::stream)
   .collect(Collectors.toSet());
Run Code Online (Sandbox Code Playgroud)