先创建相同类型的集合记录相同的行。
每次遍历原来集合的时候都与先创建好的集合中的数据进行比较有没有相同的行,有就进行合并(累加),没有就将当前遍历的对象添加到先创建的集合中。
姓名 日期 系数
小刘 2015/9/1 0.15
小刘 2015/9/1 0.35
小刘 2015/9/2 0.15
小强 2015/9/2 0.35
小强 2015/9/2 0.15
首先确定两个问题:
1.使用姓名和日期两个字段可以判断是否是相同?
2.相同元素在添加到list中要把系数相加?
如果上面上面猜测是对的,那么可以这样做:
1.重写“姓名 日期 系数”对象的equals和hashcode方法,使用姓名和日期。
2.在添加到list之前,先判断是否contains(包含)。
3.1.如果contains(包含),那么将这个对象的系数+要添加的对象的系数。
3.2.如果不contains(包含),那么直接add(添加)。
java List 2个List 合并后去重, 或单个List 去重
参考:点击打开链接