如何用java8stream实现多个对象中相同的字段值相加?最后得到一个对象

如何用java8stream实现多个对象中相同的字段值相加?最后得到一个对象

相同的字段值,说的是字段的名字相同还是值相同
值相同的话,可以分组求和

list.stream().collect(groupingBy(类::字段, counting())); //求总数
list.stream().collect(groupingBy(类::字段, sum())); //求和

list.stream().collect(groupingBy(类::字段, summingInt())); //求和

这些对象是在一个集合中么,如果是在一个集合中,如List lst中,可使用lst.stream.map(这里映射成需要的字段).collect(Collectors.summingInt());
如果在多个集合中,可以考虑使用Arrays.Of(lst1,lst2).stream().map(如果各个集合的对象不相同,在这里使用instanceof判断).collect(Collectors.summingInt());