问题产生的原因:使用该方法时,转换后map的key重复,导致出现该错误。
解决方法:
使用toMap的重载方法
Collectors.toMap(keyMapper, valueMapper, mergeFunction);
代码示例:
Map<String, Double> stockMap = new HashMap<>();
//改动前
stockMap = skuDataPoList.stream().collect(Collectors.toMap(SkuDataPo::getSourceSkuId,
skuDataPo.getStockNum()
));
//改动后
stockMap = skuDataPoList.stream().collect(Collectors.toMap(SkuDataPo::getSourceSkuId,
skuDataPo.getStockNum(),
(value1, value2) -> value2
));