【发布时间】:2016-11-18 03:34:06
【问题描述】:
我有一个用户列表
List<User> usrList1 = new ArrayList<User>();
userList.add(new User("usr1",11,""));
userList.add(new User("usr2",22,""));
userList.add(new User("usr3",33,""));
另一个用户列表包含
List<User> usrList2 = new ArrayList<User>();
userList2.add(new User("",11,"add1"));
userList2.add(new User("",22,"add2"));
考虑到性能,现在我如何合并这两个列表并使用 id 获得一个用户列表。考虑userList1 和userList2 的大小约为50。
List<User> usrList = new ArrayList<User>();
userList.add(new User("usr1",11,"add1"));
userList.add(new User("usr2",22,"add2"));
userList.add(new User("usr3",33,""));
【问题讨论】:
-
最终列表中的“add3”从何而来?
-
对不起。已更新。
-
性能在这里真的没有问题,对于 50 个项目的列表。
-
为什么不尝试使用地图?您可以使用 usrList2 的元素轻松更新每个 usrList1,只需输入新值即可。
-
usrList1 中的 @Molinetas 对象的值很少(例如名称),而 usrList2 的其他值很少(例如地址),只有 id 是常见的。我没有告诉你如何在这种情况下使用地图。
标签: java list object arraylist merge