JAVA集合操作的利器:CollectionUtils
来源:互联网 发布:java web项目开发书籍 编辑:程序博客网 时间:2024/05/02 02:56
【IT168 技术】使用 CollectionUtils 中四个方法之一执行集合操作.这四种分别是 union(),intersection();disjunction(); subtract();
下列例子就是演示了如何使用上述四个方法处理两个 Collection;
注: 这些方法都是数学的集合算法
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.ArrayUtils;
public class CollectionUtilsIntro {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
String[] arrayA =new String[] {"1","2","3","3","4","5" };
String[] arrayB =new String[] {"3","4","4","5","6","7" };
List<String> a= Arrays.asList(arrayA);
List<String> b= Arrays.asList(arrayB);
//并集
Collection<String> union= CollectionUtils.union(a, b);
//交集
Collection<String> intersection= CollectionUtils.intersection(a, b);
//交集的补集
Collection<String> disjunction= CollectionUtils.disjunction(a, b);
//集合相减
Collection<String> subtract= CollectionUtils.subtract(a, b);
Collections.sort((List<String>) union);
Collections.sort((List<String>) intersection);
Collections.sort((List<String>) disjunction);
Collections.sort((List<String>) subtract);
System.out.println("A:" + ArrayUtils.toString(a.toArray()));
System.out.println("B:" + ArrayUtils.toString(b.toArray()));
System.out.println("--------------------------------------------");
System.out.println("Union(A, B):" + ArrayUtils.toString(union.toArray()));
System.out.println("Intersection(A, B):" + ArrayUtils.toString(intersection.toArray()));
System.out.println("Disjunction(A, B):" + ArrayUtils.toString(disjunction.toArray()));
System.out.println("Subtract(A, B):" + ArrayUtils.toString(subtract.toArray()));
}
}
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.ArrayUtils;
public class CollectionUtilsIntro {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
String[] arrayA =new String[] {"1","2","3","3","4","5" };
String[] arrayB =new String[] {"3","4","4","5","6","7" };
List<String> a= Arrays.asList(arrayA);
List<String> b= Arrays.asList(arrayB);
//并集
Collection<String> union= CollectionUtils.union(a, b);
//交集
Collection<String> intersection= CollectionUtils.intersection(a, b);
//交集的补集
Collection<String> disjunction= CollectionUtils.disjunction(a, b);
//集合相减
Collection<String> subtract= CollectionUtils.subtract(a, b);
Collections.sort((List<String>) union);
Collections.sort((List<String>) intersection);
Collections.sort((List<String>) disjunction);
Collections.sort((List<String>) subtract);
System.out.println("A:" + ArrayUtils.toString(a.toArray()));
System.out.println("B:" + ArrayUtils.toString(b.toArray()));
System.out.println("--------------------------------------------");
System.out.println("Union(A, B):" + ArrayUtils.toString(union.toArray()));
System.out.println("Intersection(A, B):" + ArrayUtils.toString(intersection.toArray()));
System.out.println("Disjunction(A, B):" + ArrayUtils.toString(disjunction.toArray()));
System.out.println("Subtract(A, B):" + ArrayUtils.toString(subtract.toArray()));
}
}
输出如下:
A: {1,2,3,3,4,5}
B: {3,4,4,5,6,7}
--------------------------------------------
Union(A, B): {1,2,3,3,4,4,5,6,7}
Intersection(A, B): {3,4,5}
Disjunction(A, B): {1,2,3,4,6,7}
Subtract(A, B): {1,2,3}
- JAVA集合操作的利器:CollectionUtils
- JAVA集合操作的利器:CollectionUtils
- JAVA集合操作的利器:CollectionUtils
- JAVA集合操作的利器:CollectionUtils
- JAVA集合操作的利器:CollectionUtils
- JAVA集合操作的利器:CollectionUtils
- 集合操作的利器:CollectionUtils
- 集合的常用操作类CollectionUtils
- 集合的常用操作类CollectionUtils
- 集合的常用操作类CollectionUtils
- 集合的常用操作类CollectionUtils
- 集合CollectionUtils的操作方法
- 集合CollectionUtils的操作方法
- 集合操作工具类CollectionUtils
- 集合操作工具类CollectionUtils
- 发现和记录-集合的常用操作类CollectionUtils
- CollectionUtils 操作集
- 拓展集合工具类CollectionUtils
- 善解人意是快乐成功的关键
- 全排列和全组合的问题
- ADF11g-005:ADF学习网址收藏
- ASP.NET 4.0 与 Entity Framework 4-第四篇-Entity Framework在三层架构中的使用
- API设计的黄金法则
- JAVA集合操作的利器:CollectionUtils
- 本地电脑轻松管理网站文件的WebDAV功能
- Tomcat6下应用太多出现java.lang.OutOfMemoryError: PermGen space【解决办法】
- 反编译framework.odex
- 3:(C#下使用GDAL库)打开影像文件并读取基本信息
- C语言学习
- 找工作..网易篇
- mmap
- 使用eclipse+DevC++完成JNI调用(2)