【发布时间】:2018-11-03 13:16:44
【问题描述】:
我想通过处理将结果收集到TreeMap<Integer,Double>
TreeMap<Integer,ArrayList<String>>.
TreeMap<Integer,Double> result2 = units.entrySet().stream()
.filter(v -> v.getValue().size()>3)
.filter(v -> !v.getValue().get(1).isEmpty() && !v.getValue().get(2).isEmpty())
.mapToDouble(v -> mult( v.getValue().get(1), v.getValue().get(2)))
.collect();
基本上我所做的是我从流中的字符串的 ArrayList 中获取值,并过滤掉没有值的值,并通过在 lambda 表达式中使用 mult 函数来获得第二个和第三个元素的乘积。现在我不知道如何收集到 TreeMap,其中键是处理后的 TreeMap 的键,称为单位,值应该是我在 mapToDouble 中计算的乘积。
注意:单位是TreeMap<Integer,ArrayList<String>>
【问题讨论】:
标签: java lambda treemap collect