list去除重复对象最优 去除list集合中重复项的几种方法?
去除list集合中重复项的几种方法?
一个对象如何算作重复?您需要实现hashcode()和equals()方法来声明两个对象“相等”。最简单的条件是一个或多个成员变量的值相等(如ID、name),等等。在本例中,set=new HashSet()集合.addAll(list)到目前为止,我们已经使用set特性删除了重复项。接下来,将消除重复的集合放入新列表中。List NEWLIST=新数组列表()新建列表.addAll(set)重复数据消除本身非常简单。其复杂性在于对“客体平等”概念的理解。默认情况下,在两个对象继承object方法之后,只有当堆内存地址相等时,它们才相等。因此,您必须自己重写equals和hashcode。最好的方法是使用set,因为set中存储的数据是不重复的。
如果不想使用set,可以执行以下操作。
Listlistutmp=newarraylist()//创建一个列表集合,用于临时存储非重复列表元素。
对于(Objectobj:列表){
//这里可以根据需要添加强制转换。
//如果列表中存储了用户对象,则添加useru=(user)obj
如果(!列表)tmp.包含(obj)){//注意contains方法是通过equals方法进行比较的,因此您需要根据自己的需要查看是否需要重写list对象中的equals方法。
列表utmp添加(obj)//如果上面添加了强制转换,则应该在此处写入列表utmp添加(u)
}
}
list去除重复对象最优 list集合怎么去重 set集合对象去重
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。