Joh*_* S. 6 java parallel-processing foreach lambda hashmap
在java 8中,我知道他们添加了利用多核处理器的并行流,我知道你可以使用这样的东西:
List<String> list = new ArrayList<String>();
list.parallelStream().forEach(str -> System.out.println(str));
Run Code Online (Sandbox Code Playgroud)
但是我如何通过HashMap实现这样的目标呢?
Map<String, Integer> map = new HashMap<String, Integer>();
// won't work, because the Map class doesn't have the .parallelStream()
map.parallelStream().forEach((str, num) -> System.out.println(str + ":" + num));
Run Code Online (Sandbox Code Playgroud)
有谁知道怎么做这样的事情?谢谢
rge*_*man 23
您不能Map直接流式传输,但可以使用该entrySet()方法流式传输其入口集.从条目对象中提取键和值.
map.entrySet()
.parallelStream()
.forEach(entry -> System.out.println(entry.getKey() + ":" + entry.getValue()));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13647 次 |
| 最近记录: |