0
我有4名工人的分布式系统,并且每个都以将它们减小至的ArrayList < MyClass的>减少地图对象插入的ArrayList
发送1个地图<字符串,MyClass的>对象到减速器我试图接近它的方式是通过从工作人员收集所有Map项目到一个ArrayList,然后使用并行流我想使用reduce方法将它们减少到我已初始化到reducer中的列表。这里是我的代码:
ArrayList<MyClass> result = new ArrayList<MyClass>();
maps.parallelStream().reduce(null, (res, m)->{
result.add(m.get(key));
});
我上减少方法如下编译错误:
的方法减少(地图<字符串,路线>,BinaryOperator <地图<字符串,路线>>)在类型流<地图<字符串,路线>>不适用的参数(NULL,(<没有类型> RES,<没有类型>米) - > {})
无需并行流。使用列表中的[addAll](https://docs.oracle.com/javase/8/docs/api/java/util/List.html#addAll-java.util.Collection-)方法来添加所有值您使用[values]的地图(https://docs.oracle.com/javase/8/docs/api/java/util/Map.html#values--)。 –
没有'java.util.Map#parallelStream' ...但也许你可以使用这个:'List
也许使用'new ArrayList <>(maps.values());' – SilverNak