java list 去除重复元素,list.stream去重
本文实例为大家分享了爪哇中溪流流去除目录重复元素的具体代码,供大家参考,具体内容如下
业务场景
在开发中我们常常需要过滤目录中的重复对象,而重复的定义往往是根据单个条件或者多个条件,如果是单个条件的话还是比较好处理的,即使不使用工具,代码也可以很容易实现,但如果判断依据不是单个条件,而是多个条件的话,代码实现起来就会比较复杂,此时我们一般就会使用工具来简化开发
单条件去重代码
ArrayListlistData collect=list。流().收藏(收藏者。收集然后(收藏家。到集合(()-新树集(比较器。comparisng(list data :3360 getid))、ArrayList :3360 new);解释
列表-列表列表数据-列表中存的对象编号是判断是否重复的条件,只保留唯一编号对象
多条件去重代码
ArrayListlistData collect=list。流().收藏(收藏者。收集然后(收藏家。到集合(()-新树集(比较器。comparisng(p-p . get patent name();p.getLevel()))),ArrayList : new));测试代码
导入Java。util。*;导入Java。util。溪流。收藏家;public class ExcelUtil { private static String[]params={ p001 , p002 , p003 , p004 };public static void main(String[]args){ list datum dataList=new ArrayList();for(int I=0;I 100 I){ if(I % 2==0){ Datum Datum=new Datum(params[new Random().nextInt(params.length)],params[new Random().nextInt(params.length)],params[new Random().nextInt(params.length)],params[new Random().nextInt(params.length)],params[new Random().下一个int(params。长度)]);数据表。添加(基准);} }系统。出去。println( 0 size : 数据列表。size()-数据列表);//单条件ArrayList datum collect 1=datalist。流().收藏(收藏者。收集然后(收藏家。到集合(()-新的树集数据(比较器。comparisng(datum :3360 getid))、ArrayList :3360 new);系统。出去。println( 1尺寸: 收集1。size()-收集1);//两个条件ArrayListDatum collect 2=datalist。流().收藏(收藏者。收集然后(收藏家。到集合(()-新树集(比较器。正在比较(p-p . getid();p.getAddress()))),ArrayList : new));系统。出去。println( 2尺寸: 收集2。size()-收集2);//三个条件ArrayListDatum collect 3=datalist。stream(). 1 收藏(收藏者。收集然后(收藏家。到集合(()-新树集(比较器。正在比较(p-p . getinfo();p . get address()";"p.getName()))),ArrayList : new));系统。出去。println( 3尺寸: 收集3。size()-收集3);}}效果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持盛行它。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。