通过在集合上迭代、映射到多个哈希映射并减少到一个哈希映射来添加并发性



有一个特定的用例,不太确定最佳方法。

因此,目前的方法是迭代一组对象(可关闭迭代器(,并将它们映射到哈希图中(通过对象的日期属性进行比较,适当地处理冲突(。

我正在寻找一种并行的方法来加快速度,最初的想法是使用带有并行和forEach的Java 8流,利用并发哈希图来实现并发。这种方法的主要瓶颈似乎是并发hashmap,并且这种方法在添加并发性方面没有任何改进。

我现在的想法是并行映射到多个哈希映射中。然后简化为一个适当处理冲突的哈希图。想知道如何使用Streams在Java中实现这样的方法。我知道有内置的map和reduce操作,但不确定收集多个hashmap的方法(执行操作并添加到集合中?(。

尝试使用groupingBy((函数。例如

stream.collect(Collectors.groupingBy(Locale::getCountry));

生成一个以国家为关键字、以该国家为值的区域设置的地图

最新更新