集合之CollectionUtils

在公司发现集合的运用非常常见,而且就是把数据传来传去,话不多说,接下来就学习一下CollectionUtils,这不是jdk自带的类,是存在于apache下的,jar包下载地址
 

<dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-collections4</artifactId>
        <version>4.3</version>
</dependency>

首先学习这个类之前,先把数学集合中的知识学习一下,学完之后,我才发现为什么在编程语言中叫做集合了,
它几乎和数学中的集合的概念差不太多。现在才惊醒,我太难了。

数学中的概念:
1.交集:由所有属于集合A属于集合B的元素所组成的集合,叫做集合A与集合B交集(intersection),记作AB
2.并集AB并集是由所有A的元素和所有B的元素,而没有其他元素的集合(集合中没有重复的元素)AB的并集通常写作 "AB",
3.差集
4.对称差集: 这一部分就是交集外的部分
5.补集

百度百科的文字太繁琐了,直接用例子说一下吧
设有两个集合A:{1,2,3}  B:{3,4,5}
1. A和B的交集:3
2. A和B的并集:1,2,3,4,5 (注意:并集不能有重复的元素)
3. A相对于B的差集: 1,2
4. B相对于A的差集: 4,5
5. A和B的对称差集: 1,2,4,5

 有了上面的知识,学习CollectionUtils,易如反掌
 

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import org.apache.commons.collections4.CollectionUtils;

public class Test1 {
	public static void main(String[] args) {
		/**
		 * 集合A: 1,2,3
		 * 集合B: 3,4,5
		 */
		//交集,并集, 差集
		List<Integer> A = new ArrayList<Integer>(Arrays.asList(1,2,3));
		List<Integer> B = new ArrayList<Integer>(Arrays.asList(3,4,5));
		
		System.out.println("A和B的交集:"+CollectionUtils.intersection(A, B));//3
		System.out.println("A和B的并集:"+CollectionUtils.union(A, B));//1,2,3,4,5
		System.out.println("A和B的差集:"+CollectionUtils.subtract(A, B));//1,2
		System.out.println("B和A的差集:"+CollectionUtils.subtract(B, A));//4,5
		System.out.println("A和B的对称差集:"+CollectionUtils.disjunction(A, B));//1,2,4,5
	}
}

CollectionUtils还有其他实用的方法,就没有在这里一一展开了
参考博文: https://www.cnblogs.com/qdhxhz/p/10787130.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值