我试图使用java流和集合从对象列表中获取分组,计数和求和。我不确定如何达到期望的结果。
输入模型
String month;
BigDecimal salary;
String department;
String noOfEmp;
Run Code Online (Sandbox Code Playgroud)
InputModel [(May,100,IT,10),(June,300,IT,7),(July,300,IT,7),(May,1000,HR,5),(June,300,HR,7 ),(7月600,HR,5)]
输出模型
String month
BigDecimal salary
String noOfEmp
Run Code Online (Sandbox Code Playgroud)
预期输出 OutputModel [(May,1100,15),(June,600,14),(July,900,12)]
我尝试了下面的代码,但它返回了group by和Count。
Map<String, Integer> result= inputModels.parallelStream().collect(Collectors.groupingBy(InputModel::getMonth,
LinkedHashMap::new, Collectors.summingInt(InputModel::getNoOfEmp)));
Run Code Online (Sandbox Code Playgroud)
提前致谢!!!