如何对list集合对象去重
我们知道,List集合是一个元素有序,可重复的集合,集合中每个元素都有对应的顺序索引,我们通过索引进行取值赋值;
那么,当list集合中的元素为多个属性组成的对象时,如何对list集合进行去重;
因为对象是在内存中开辟一块区域进行存储,每个对象的值哪怕相同,但只要是你新new出来的,代表的也是不同的对象,所以我们首先需要在对象中重写hashcode and equars方法,使属性值相同的对象指向同一个地址;然后将list集合的元素放入Set集合中,因为Set集合是不可重复的,这里我们用Set的addAll(list)方法,这样我们就已经将list集合中的对象元素进行了去重,接着我们需要将Set集合重新转换成list集合,使用List list=new ArrayList(set)将set集合转换成list集合;这样一来,我们就完成了对元素是对象的list集合进行去重的实现。
简单来说就是下面三步:
1、在对象中重写hashcode and equars方法
2、使用Set的addAll(list);方法去重
3、使用List list=new ArrayList(set)将set集合转换成list集合
作者:山是山
来源链接:https://blog.csdn.net/dou747172348/article/details/86670335
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。