CollectionUtils工具类

CollectionUtils工具类

package org.apache.commons.collections;

List<String> list1 = new ArrayList();
        list1.add("1111");
        list1.add("2222");
        list1.add("3333");

        List<String> list2 = new ArrayList();
        list2.add("3333");
        list2.add("4444");
        list2.add("5555");
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

1、CollectionUtils.union(list1,list2); ##[1111, 2222, 3333, 4444, 5555]
合并两个集合,不去重

2、CollectionUtils.intersection(list1,list2); ##[3333]
得到两个集合中相同的元素

3、CollectionUtils.disjunction(list1,list2) ##[1111, 2222, 4444, 5555]
取两个集合的补集

4、CollectionUtils.subtract(list1,list2) ##[1111, 2222]
list1 - list2 = 剩余元素组成的集合

5、CollectionUtils.containsAny(list1,list2) ##true
长的集合包含短的集合的任何一个数据true

6、CollectionUtils.getCardinalityMap(list1) ##{1111=1, 2222=1, 3333=1}
统计集合中各元素出现的次数,并Map<Object, Integer>输出

7、CollectionUtils.isSubCollection(list1,list2)
list1是否list2集合子集,list1集合大小<=list2集合大小

8、CollectionUtils.isProperSubCollection(list1, list2)
a是否b集合子集,a集合大小<b集合大小

9、CollectionUtils.isEqualCollection(list1,list2)
两个集合是否相同

10、CollectionUtils.cardinality("1111",list1)
某元素在集合中出现的次数

11、CollectionUtils.find(list1,list ->Integer.parseInt(list.toString())>2000) ##2222
返回集合中满足函数式的唯一元素,只返回最先处理符合条件的唯一元素

12、CollectionUtils.filter(list1,list -> Integer.parseInt(list.toString()) >2000); ##2222 3333
过滤集合中满足函数式的所有元素

13、CollectionUtils.countMatches(list1,list -> Integer.parseInt(list.toString()) >2000) ##2
返回集合中满足函数式的数量

14、CollectionUtils.select(list1,list -> Integer.parseInt(list.toString()) >2000) ## [2222, 3333]
将满足表达式的元素存入新集合中并返回新集合元素对象

15、CollectionUtils.selectRejected(list1,list -> Integer.parseInt(list.toString()) >2000) ##[1111]
将不满足表达式的元素存入新集合中并返回新集合元素对象

16、CollectionUtils.addIgnoreNull(list1, "4444") ##[1111, 2222, 3333, 4444]
除非元素为null,否则向集合添加元素

17、CollectionUtils.addAll(list1, new String[]{"4444","5555"}) ##[1111, 2222, 3333, 4444, 5555]
将一个数组或集合中的元素全部添加到另一个集合中

18、CollectionUtils.isEmpty(list1)
判断集合是否为空

19、CollectionUtils.isNotEmpty(list1)
判断集合不为空

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值