Java集合List的差集、并集、交集

转载于:https://www.cnblogs.com/qlqwjy/p/9812919.html

一、List的差集

    @Test
public void test1(){
List<String> list1 = new ArrayList<String>();
list1.add("A");
list1.add("B"); List<String> list2 = new ArrayList<String>();
list2.add("B");
list2.add("C"); // list1.removeAll(list2);
// System.out.println(list1); //[A]
// System.out.println(list2);//[B, C] list2.removeAll(list1);
System.out.println(list1);//[A, B]
System.out.println(list2);//[C]
}

二、List的并集(带重复项)

    @Test
public void test2(){
List<String> list1 = new ArrayList<String>();
list1.add("A");
list1.add("B"); List<String> list2 = new ArrayList<String>();
list2.add("B");
list2.add("C"); // list1.addAll(list2);
// System.out.println(list1);//[A, B, B, C]
// System.out.println(list2);//[B, C] list2.addAll(list1);
System.out.println(list1);//[A, B]
System.out.println(list2);//[B, C, A, B]
}

三、List的并集(不带重复项)

    @Test
public void test3(){
List<String> list1 = new ArrayList<String>();
list1.add("A");
list1.add("B"); List<String> list2 = new ArrayList<String>();
list2.add("B");
list2.add("C"); // list1.removeAll(list2);
// list1.addAll(list2);
// System.out.println(list1);//[A, B, C]
// System.out.println(list2);//[B, C] list2.removeAll(list1);
list2.addAll(list1);
System.out.println(list1);//[A, B]
System.out.println(list2);//[C, A, B]
}

四、List的交集

    @Test
public void test4(){
List<String> list1 = new ArrayList<String>();
list1.add("A");
list1.add("B"); List<String> list2 = new ArrayList<String>();
list2.add("B");
list2.add("C"); // list1.retainAll(list2);
// System.out.println(list1);//[B]
// System.out.println(list2);//[B, C] list2.retainAll(list1);
System.out.println(list1);//[A, B]
System.out.println(list2);//[B]
}

Java集合List-差集、并集、交集的更多相关文章

  1. 【python】集合 list差集|并集|交集

    两个list差集 list(set(b).difference(set(a))) # b中有而a中没有的 示例: a=[1,2,3] b=[2,3] list(set(a).difference(se ...

  2. .NET的求复杂类型集合的差集、交集、并集

    前言 如标题所述,在ASP.NET应用程序开发中,两个集合做比较时 我们使用微软IEnumerable封装的 Except/Intersect/Union 取 差集/交集/并集 方法是非常的方便的: ...

  3. java集合运算:求交集,并集,集合差

    今天突然想用Java实现如何用集合实现交集,并集和差集的运算了!主要是看Python语言的时候想起来的. 实现主要使用的Set集合,Set集合的特点是集合内的元素不可重复. 具体代码如何: packa ...

  4. SQL集合运算 差集 并集 交

    SQL-3标准中提供了三种对检索结果进行集合运算的命令:并集UNION:交集INTERSECT:差集EXCEPT(在Oracle中叫做 MINUS).在有些数据库中对此的支持不够充分,如MySql中只 ...

  5. java集合(交集,并集,差集)

    说明:这里没有求差集的代码,有了交集和并集,差集=并集-交集       package com; import java.util.ArrayList; import java.util.HashS ...

  6. 【Sets】使用Google Guava工程中Sets工具包,实现集合的并集/交集/补集/差集

    获取两个txt文档的内容~存储进集合中求集合的并集/交集/补集/差集 package com.sxd.readLines.aboutDB; import java.io.BufferedReader; ...

  7. 集合运算—union(并集)、intersect(交集)和except(差集)

    一.集合运算的基本格式是: 集合查询1 <集合运算> 集合查询2 [order by ...] 二.集合运算符是对两个集合操作的,两个集合必须具有相同的列数,列具有相同的数据类型(至少能隐 ...

  8. Sql Server中集合的操作(并集、差集、交集)学习

    首先我们做一下测试数据 1.创建测试数据 --创建人员表1-- create table Person1 ( Uid ,) primary key, Name ) not null ) --创建人员表 ...

  9. C# 集合的交集 差集 并集 去重

    C# 集合的交集 差集 并集 去重 两个对象list,直接比较是不行的,因为他们存的地址不一样 需要重写GetHashCode()与Equals(object obj)方法告诉电脑 class Stu ...

随机推荐

  1. Numpy的学习2-基础运算1

    import numpy as np a=np.array([10,20,30,40]) # array([10, 20, 30, 40]) b=np.arange(4) # array([0, 1, ...

  2. SSRF CTF 例题

    一道ctf题目,有两个文件:ssrf3.php和flag.php 题目意思是flag只能127.0.0.1访问,还进行了post验证,这就需要gopher提交post数据来绕过 curl设置了302跳 ...

  3. Django中ORM的使用

    Django中ORM的使用 ORM orm(object-relation-mapping)对象关系映射,即用对象来表示关系数据库中的表: 类 --> 表, 对象-->一行数据 对象的属性 ...

  4. 如何使用Pytest进行自动化测试

    为什么需要自动化测试 自动化测试有很多优点,但这里有3个主要的点 可重用性:不需要总是编写新的脚本,除非必要,即使是新的操作系统版本也不需要编写脚本. 可靠性:人容易出错,机器不太可能.当运行不能跳过 ...

  5. 在python中元组与列表的区别及序列解包

    一. 元组与列表的区别 元组中的数据一旦定义就不允许更改. 元组没有append().extend()和insert()等方法,无法向元组中添加元素. 元组没有remove()或pop()方法,也无法 ...

  6. 2021年第一个flag

    2021年开始更新本文列出的系列文章,根据书籍和自己的理解整理出spring框架的相关的学习 Spring 的设计理念和整体架构 学习目标 Spring的各个子项目 Spring的设计目标 Sprin ...

  7. JavaWeb基础总结:Filter专题

    Java Servlet Filter Filter 被称为过滤器,其主要作用是对 Servlet 容器调用 Servlet 的过程进行拦截,从而在 Servlet 进行响应处理的前后实现一些特殊功能 ...

  8. 实体类转json 和 json转实体类

    1.new JSONObject().toJSONString(rootEntity) JSONObject.toJSONString(specPrices)//specPrices实体类   2. ...

  9. [LeetCode]147. Insertion Sort List链表排序

    插入排序的基本思想 把排好的放在一个新的变量中,每次拿出新的,排进去 这个新的变量要有超前节点,因为第一个节点可能会有变动 public ListNode insertionSortList(List ...

  10. [leetcode]543. Diameter of Binary Tree二叉树的直径

    题目中的直径定义为: 任意两个节点的最远距离 没想出来,看的答案 思路是:diameter = max(左子树diameter,右子树diameter,(左子树深度+右子树深度+1)) 遍历并更新结果 ...