集合操作工具类CollectionUtils

jopen 9年前

使用CollectionUtils中四个方法之一执行集合操作.这四种分别是union(),intersection();disjunction(); subtract();
下列例子就是演示了如何使用上述四个方法处理两个Collection;
例子:使用:CollectionUtils union(),intersection();disjunction(); subtract();
注: 这些方法都是数学的集合算法

Java代码  

import java.util.*;    String[] arrayA = new String[] { "1", "2", "3", "3", "4", "5" };    String[] arrayB = new String[] { "3", "4", "4", "5", "6", "7" };        List a = Arrays.asList( arrayA );    List b = Arrays.asList( arrayB );        Collection union = CollectionUtils.union( a, b );  //并集    Collection intersection = CollectionUtils.intersection( a, b ); //交集    Collection disjunction = CollectionUtils.disjunction( a, b ); //析取    Collection subtract = CollectionUtils.subtract( a, b ); //差集        Collections.sort( union );    Collections.sort( intersection );    Collections.sort( disjunction );    Collections.sort( subtract );            System.out.println( "A: " + ArrayUtils.toString( a.toArray( ) ) );    System.out.println( "B: " + ArrayUtils.toString( b.toArray( ) ) );    System.out.println( "Union: " + ArrayUtils.toString( union.toArray( ) ) );    System.out.println( "Intersection: " +    ArrayUtils.toString( intersection.toArray( ) ) );    System.out.println( "Disjunction: " +    ArrayUtils.toString( disjunction.toArray( ) ) );    System.out.println( "Subtract: " + ArrayUtils.toString( subtract.toArray( ) ) );


The previous example performs these four operations on two List objects, a and b, printing the results with ArrayUtils.toString( ):

结果:
A: {1,2,2,2,3,3,4,5}
B: {3,4,4,5,6,7}
Union: {1,2,2,2,3,3,4,4,5,6,7}
Intersection: {3,4,5}
Disjunction: {1,2,2,2,3,4,6,7}
Subtract: {1,2,2,2,3}  


来自: http://wei5201.iteye.com/blog/870100