在java中添加项目的整数值。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在java中添加项目的整数值。相关的知识,希望对你有一定的参考价值。
我有以下模式的数据,我只是想添加类似项目的数量并存储在一个List中。而像 quantity= 1, ingredient=chicken, unit =kg
该装置将始终 公斤. 我有 List<itemsDTO>
我想从这个列表中添加类似的项目。[{1,"kg","chicken"} , {2.2,"kg","beaf"} , {0.25,"kg","chicken"}]
public class itemsDTO {
double quantity;
String unit;
String ingredient;
}
我已经尝试了这个代码
List<itemsDTO> itemsDTOList = new ArrayList<>();
for (int i = 0; i < itemsDTOList.size(); i++) {
for (int j = 0; j < itemsDTOList.size(); j++) {
if (itemsDTOList.get(i).getIngredient().equalsIgnoreCase(itemsDTOList.get(j).getIngredient())) {
int sum;
sum = itemsDTOList.get(i).getQuantity() + itemsDTOList.get(j).getQuantity();
}
}
}
预计产量1.25公斤鸡肉,2.2公斤牛肉。
答案
你可以使用 toMap
具有合并功能的收集器。
BinaryOperator<itemsDTO> sumQuantity = (a, b) -> {
a.setQuantity(a.getQuantity() + b.getQuantity());
return a;
};
itemsDTOList.stream()
.collect(Collectors.toMap(itemsDTO::getIngredient, Function.identity(), sumQuantity))
.values();
以上是关于在java中添加项目的整数值。的主要内容,如果未能解决你的问题,请参考以下文章