gpt4 book ai didi

java - 如何从两个数组列表中删除公共(public)值

转载 作者:太空狗 更新时间:2023-10-29 22:42:00 24 4
gpt4 key购买 nike

我们如何从两个 ArrayList 中删除公共(public)值?

假设我有两个 Arraylist,如下所示:

ArrayList1 = [1,2,3,4]
ArrayList1 = [2,3,4,6,7]

我希望得到如下结果:

ArrayListFinal = [1,6,7]

我该怎么做?

最佳答案

这是您可以用来完成任务的算法:

  • 构造两个数组的并集
  • 构造两个数组的交集
  • 从并集中减去交集得到结果

Java 集合支持 addAll , removeAll , 和 retainAll .使用addAll构造并集,retainAll构造交集,removeAll构造减法,like this :

// Make the two lists
List<Integer> list1 = Arrays.asList(1, 2, 3, 4);
List<Integer> list2 = Arrays.asList(2, 3, 4, 6, 7);
// Prepare a union
List<Integer> union = new ArrayList<Integer>(list1);
union.addAll(list2);
// Prepare an intersection
List<Integer> intersection = new ArrayList<Integer>(list1);
intersection.retainAll(list2);
// Subtract the intersection from the union
union.removeAll(intersection);
// Print the result
for (Integer n : union) {
System.out.println(n);
}

关于java - 如何从两个数组列表中删除公共(public)值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15575417/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com