java 快速将两个list<map> 根据map中某个固定key的value相等整合成一个list<map>
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 快速将两个list<map> 根据map中某个固定key的value相等整合成一个list<map>相关的知识,希望对你有一定的参考价值。
比如下面连个list<map>:
List<Map> list1=new ArrayList<Map>();
Map map1=new HashMap();
map1.put("a","1");
map1.put("b","2");
map1.put("c","3");
map1.put("d","4");
list1.add(map1);
Map map2=new HashMap();
map2.put("a","11");
map2.put("b","22");
map2.put("c","33");
map2.put("d","44");
list1.add(map2);
。
。
。
List<Map> list2=new ArrayList<Map>();
Map map21=new HashMap();
map21.put("a","1");
map21.put("e","v2");
map21.put("f","v3");
map21.put("g","v4");
list2.add(map21);
Map map22=new HashMap();
map22.put("a","11");
map22.put("e","v22");
map22.put("f","v33");
map22.put("g","v44");
list2.add(map22);
如何将两个list中大量map快速整合成一个list,根据key为a的value值相等匹配,结果如下:
list<map> :a=1,b=2,c=3,d=4,e=v2,f=v3,g=v4,a=11,b=22,c=33,d=44,e=v22,f=v33,g=v44, ...
其中每个map中不止这么点key,可能是300个key,每个list中大概有20W个map,以list1为中心合并,有没有快速方法实现,感觉一个个遍历效率好低,太慢了
以上是关于java 快速将两个list<map> 根据map中某个固定key的value相等整合成一个list<map>的主要内容,如果未能解决你的问题,请参考以下文章