Package org.codehaus.plexus.util
Class CollectionUtils
java.lang.Object
org.codehaus.plexus.util.CollectionUtils
- Author:
- olamy
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptiongetCardinalityMap(Collection<E> col) Returns aMapmapping each unique element in the givenCollectionto anIntegerrepresenting the number of occurrences of that element in theCollection.static <E> Collection<E>intersection(Collection<E> a, Collection<E> b) Returns aCollectioncontaining the intersection of the givenCollections.static <E> List<E>iteratorToList(Iterator<E> it) static <K,V> Map<K, V> Take a series ofMaps and merge them where the ordering of the array from 0..n is the dominant order.static <K,V> Map<K, V> Take a dominant and recessive Map and merge the key:value pairs where the recessive Map may add key:value pairs to the dominant Map but may not override any existing key:value pairs.static <T> Collection<T>subtract(Collection<T> a, Collection<T> b) Returns aCollectioncontaininga - b.
- 
Constructor Details- 
CollectionUtilspublic CollectionUtils()
 
- 
- 
Method Details- 
mergeMapsTake a dominant and recessive Map and merge the key:value pairs where the recessive Map may add key:value pairs to the dominant Map but may not override any existing key:value pairs. If we have two Maps, a dominant and recessive, and their respective keys are as follows: dominantMapKeys = { a, b, c, d, e, f } recessiveMapKeys = { a, b, c, x, y, z } Then the result should be the following: resultantKeys = { a, b, c, d, e, f, x, y, z }- Type Parameters:
- K- type
- V- type
- Parameters:
- dominantMap- Dominant Map.
- recessiveMap- Recessive Map.
- Returns:
- The result map with combined dominant and recessive values.
 
- 
mergeMapsTake a series ofMaps and merge them where the ordering of the array from 0..n is the dominant order.- Type Parameters:
- K- type
- V- type
- Parameters:
- maps- An array of Maps to merge.
- Returns:
- Map The result Map produced after the merging process.
 
- 
intersectionReturns a The cardinality of each element in the returnedCollectioncontaining the intersection of the givenCollections.Collectionwill be equal to the minimum of the cardinality of that element in the two givenCollections.- Type Parameters:
- E- the type
- Parameters:
- a- The first collection
- b- The second collection
- Returns:
- The intersection of a and b, never null
- See Also:
 
- 
subtractReturns aCollectioncontaininga - b. The cardinality of each element e in the returnedCollectionwill be the cardinality of e in a minus the cardinality of e in b, or zero, whichever is greater.- Type Parameters:
- T- the type
- Parameters:
- a- The start collection
- b- The collection that will be subtracted
- Returns:
- The result of the subtraction
- See Also:
 
- 
getCardinalityMapReturns aMapmapping each unique element in the givenCollectionto anIntegerrepresenting the number of occurrences of that element in theCollection. An entry that maps tonullindicates that the element does not appear in the givenCollection.- Type Parameters:
- E- the type
- Parameters:
- col- The collection to count cardinalities for
- Returns:
- A map of counts, indexed on each element in the collection
 
- 
iteratorToList
 
-