public static void main(String[] args) {
//java stream 实现list分组求和后并取最大值
List list = new ArrayList<>();
list.add(new HitRuleConfig("1", "1", new BigDecimal(1), 1));
list.add(new HitRuleConfig("1", "1", new BigDecimal(1), 2));
list.add(new HitRuleConfig("2", "2", new BigDecimal(1), 3));
list.add(new HitRuleConfig("2", "2", new BigDecimal(1), 4));
list.add(new HitRuleConfig("1", "1", new BigDecimal(1), 5));
list.add(new HitRuleConfig("3", "3", new BigDecimal(1), 6));
list.add(new HitRuleConfig("3", "3", new BigDecimal(1), 7));
Map configMap = list.parallelStream().filter(Objects::nonNull).
collect(Collectors.groupingBy(a -> a.getAppId() + a.getTest(),
Collectors.collectingAndThen(Collectors.reducing((c1, c2) -> (c1.getV
版权声明:本文为weixin_35224065原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。