我的ArrayList包含我的简单模型类User的许多实例,该实例仅包含2个字段:
@Data
public class User {
private String email;
private ArrayList lists;
}
我将始终为1或0的整数字段插入列表.
由于User类的对象很多,其中一些是重复的,因为它们具有相同的电子邮件地址但列表不同.
我需要将用户的重复项合并到用户的一个对象中,同时还要注意列表字段.
User user1 = new User('email@gmail.com', Arrays.asList(0, 1, 0, 1, 1));
User user2 = new User('email@gmail.com', Arrays.asList(0, 0, 0, 1, 1));
User user3 = new User('email@gmail.com', Arrays.asList(1, 1, 1, 1, 1));
/* merge duplicated objects into one */
User mergedUser = new User('email@gmail.com', Arrays.asList(1, 1, 1, 1, 1));
我很难实现将多个列表合并到一个列表中的逻辑.
其背后的逻辑并不复杂:只要有1,就将1放入合并列表.如果列表中有很多0且只有一个1,则最终的合并列表中的值将为1.
我应该采取什么方法来实现合并列表的逻辑?