场景:多个存储不同类型对象的集合分别遍历映射成同一个对象放入到一个公共集合中且若映射后的对象相同则保留后遍历产生的那一个,如何高效防止公共集合中最终存储的数据重复?
// 多角色配置重复用户取角色最大的,后面覆盖前面的
HashMap<String,RoleUserPO> urMap = new HashMap<>(512);
// 角色A1
List<A> aList = new ArrayList<>();
for(A a: aList){
RoleUserPO po = BeanCopyUtils.copyObject(a,RoleUserPO.class);
urMap.put(a.getUserNo(),po);
}
//角色B
List<B> bList = new ArrayList<>();
for(B b: bList){
RoleUserPO po = BeanCopyUtils.copyObject(b,RoleUserPO.class);
urMap.put(b.getUserNo(),po);
}
//角色C
List<C> cList = new ArrayList<>();
for(C c: cList){
RoleUserPO po = BeanCopyUtils.copyObject(c,RoleUserPO.class);
urMap.put(c.getUserNo(),po);
}