【Java用法】java 8两个List集合取交集、并集、差集、去重并集
在业务的开发过程中会经常用到两个List集合相互取值的情况,于是记录在此,方便后续使用哦~~~
public class ListTest {public static void main(String[] args) {ArrayList<String> listA = CollectionUtil.toList("a", "b", "c", "d", "e");ArrayList<String> listB = CollectionUtil.toList( "b", "c", "d", "e", "f");System.out.println("listA = " + listA);System.out.println("listB = " + listB);// listA和listB的差集(listA - listB)List<String> collect = listA.stream().filter(item -> !listB.contains(item)).collect(Collectors.toList());System.out.println("listA - listB的差集 = " + collect);// listA和listB的差集(listB - listA)List<String> collect1 = listB.stream().filter(item -> !listA.contains(item)).collect(Collectors.toList());System.out.println("listB - listA的差集 = " + collect1);// listA和listB交集List<String> intersection = listA.stream().filter(listB::contains).collect(Collectors.toList());System.out.println("listA和listB交集 = " + intersection);// listA和listB并集(不去重)listA.addAll(listB);System.out.println("listA和listB并集 = " + listA);// listA和listB并集(去重)List<String> distinctList = listA.stream().distinct().collect(Collectors.toList());System.out.println("listA和listB去重并集 = " + distinctList);}}
运行结果为:
完结!
作者:No8g攻城狮
来源链接:https://blog.csdn.net/weixin_44299027/article/details/112841905
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。