java list后台数据合并怎么做?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java list后台数据合并怎么做?相关的知识,希望对你有一定的参考价值。

我取得list的值为上图所示,我要的后台操作是把仓位号相同的number相加,两条数据合并为一条数据。请问怎么做?
List<ProductStorehouseInput> list1 = dao.listproInputsinfo(idInteger);

参考技术A List<ProductStorehouseInput> list1 = dao.listproInputsinfo(idInteger);
Iterator it = list1.iterator();
Map map = new HashMap();
while(it.hasNext())
ProductStorehouseInput psi = (ProductStorehouseInput)it.next();
String key = psi.get仓库号();
if(map.get(key) == null)
map.put(key,psi);
else
ProductStorehouseInput psi1 = (ProductStorehouseInput)map.get(key);
psi1.setNumber(psi1.getNumber() + psi.getNumber());
map.put(key,psi1);

list1.remove(psi);

for(Object obj:map.keySet())
list1.add(map.get(obj));
本回答被提问者采纳
参考技术B 这个查询的时候可以group by,具体语法你百度一下
如果不想用这个就遍历list吧,将得到的结果放到一个新的list里
参考技术C 第一步:再建一个List<ProductStorehouseInput> list2,循环一次,把相同仓库号的number相加,存一个id,把单个的直接存起来。
第二步:去掉重复的。
参考技术D 这个你取出来的时候用sql语言一个select sum(number) ......group by ("仓库号") 不就行了吗?

以上是关于java list后台数据合并怎么做?的主要内容,如果未能解决你的问题,请参考以下文章

前台的表格里面要填写的数据怎么封装list或者json到后台

把excel导入服务器后台页面显示,java怎么写啊,求答案,最后的效果是下图这样。

asp.net前端怎么传list给后台

js如何接收处理后台传来的list

java后台怎么接收并解析前台传过来的json

Java web根据下拉框选定内容进行查询数据怎么做?