集合的常用操作类CollectionUtils

本文介绍了一个使用Java实现的集合操作示例,展示了如何利用Apache Commons Collections库进行集合的并集、交集、补集和差集等操作,并通过具体实例说明了这些操作的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转:http://www.blogjava.net/jakin/archive/2009/05/14/270634.html

[java]  view plain copy
  1. package com.jakin.util;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.Collection;  
  5. import java.util.Collections;  
  6. import java.util.List;  
  7.   
  8. import org.apache.commons.collections.CollectionUtils;  
  9. import org.apache.commons.lang.ArrayUtils;  
  10.   
  11. public class CollectionUtilsTest {  
  12.   
  13.     @SuppressWarnings("unchecked")  
  14.     public static void main(String[] args) {  
  15.   
  16.         List<String> aList = new ArrayList<String>();  
  17.         aList.add("aaa");  
  18.         aList.add("bbb");  
  19.         aList.add("ccc");  
  20.         List<String> bList = new ArrayList<String>();  
  21.         bList.add("aaa");  
  22.         bList.add("ddd");  
  23.         bList.add("eee");  
  24.         // 并集  
  25.         Collection<String> unionList = CollectionUtils.union(aList, bList);  
  26.         // 交集  
  27.         Collection<String> intersectionList = CollectionUtils.intersection(aList, bList);  
  28.         // 是否存在交集  
  29.         boolean isContained = CollectionUtils.containsAny(aList, bList);  
  30.         // 交集的补集  
  31.         Collection<String> disjunctionList = CollectionUtils.disjunction(aList, bList);  
  32.         // 集合相减  
  33.         Collection<String> subtractList = CollectionUtils.subtract(aList, bList);  
  34.           
  35.         // 排序  
  36.         Collections.sort((List<String>) unionList);  
  37.         Collections.sort((List<String>) intersectionList);  
  38.         Collections.sort((List<String>) disjunctionList);  
  39.         Collections.sort((List<String>) subtractList);  
  40.   
  41.         // 测试  
  42.         System.out.println("A: " + ArrayUtils.toString(aList.toArray()));  
  43.         System.out.println("B: " + ArrayUtils.toString(bList.toArray()));  
  44.         System.out.println("A has one of B? : " + isContained);  
  45.         System.out.println("Union(A, B): "  
  46.                 + ArrayUtils.toString(unionList.toArray()));  
  47.         System.out.println("Intersection(A, B): "  
  48.                 + ArrayUtils.toString(intersectionList.toArray()));  
  49.         System.out.println("Disjunction(A, B): "  
  50.                 + ArrayUtils.toString(disjunctionList.toArray()));  
  51.         System.out.println("Subtract(A, B): "  
  52.                 + ArrayUtils.toString(subtractList.toArray()));  
  53.   
  54.     }  
  55. }  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值