stringList.add("c"); stringList.add("i"); stringList.add("j"); stringList.add("a");//一、求交集//方法1:直接通过retainAll直接过滤List<String> stringList1 =newArrayList<>(Arrays.asList("a,b,c,d,e,f,g,h".split(","))); stringList1.retainAll(stringList); System.out.println("...
通过使用Stream的filter和collect方法,可以轻松地实现取差集的功能。 以下是使用Stream API的代码示例: List<Integer> list1 = Arrays.asList(1, 2, 3, 4, 5); List<Integer> list2 = Arrays.asList(3, 4, 5, 6, 7); List<Integer> difference =list1.stream() .filter(element-> !list2.contains(...
initData(listA, listB); logger.info("计算交集:"); listA.retainAll(listB); logger.info(String.valueOf(listA.size())); initData(listA, listB); logger.info("计算差集:"); listA.removeAll(listB); logger.info(String.valueOf(listA.size())); } private void initData(List listA, List lis...
上述代码创建了两个list对象:list1和list2。list1包含元素"A"、“B"和"C”,而list2包含元素"B"、“C"和"D”。 2.2 获取两个list对象的差集 接下来,我们需要获取这两个list对象的差集。 List<String>difference=newArrayList<>(list1);difference.removeAll(list2); 1. 2. 上述代码首先创建了一个新的列表...
java两个list交集并集差集去重复并集 前提需要明⽩List是引⽤类型,引⽤类型采⽤引⽤传递。 我们经常会遇到⼀些需求求集合的交集、差集、并集。例如下⾯两个集合:List<String> list1 = new ArrayList<String>();list1.add("A");list1.add("B");List<String> list2 = new ArrayList<St...
(stringList); System.out.println("差集1: " + stringList3); //方法2:通过过滤掉不存在于stringList的数据,然后和本数组进行交集处理 List<String> stringList3_2 = new ArrayList<>(Arrays.asList("a,b,c,d,e,f,g,h".split(","))); stringList3_2.retainAll(stringList3_2.stream() ....
2.取交集或者差集时存在主数据和从数据的关系,可提前判断一下那个集合数据量更多,来决定主从数据,或者经过两轮比较,或者经过两轮比较,获取两个结果集。下面例举中,list1为主数据,list2为从数据。 取交集 public static void main(String[] args) { //模拟数据 ...
一、取交集、并集、差集 importjava.util.ArrayList;importjava.util.List;importjava.util.stream.Collectors;/** * @author Alan Chen * @description * @date 2021/8/11 */publicclassTest{publicstaticvoidmain(String[]args){List<String>list1=newArrayList<String>();list1.add("1");list1.add("2")...
stringList2_2.removeAll(stringList_1);stringList_1.addAll(stringList2_2);System.out.println("无重并集: "+stringList_1);//三、求差集//方法1:直接使用removeAll()方法List<String>stringList3=newArrayList<>(Arrays.asList("a,b,c,d,e,f,g,h".split(",")));stringList3.removeAll(string...