public final class CollectionUtil
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
static <T> java.util.List<T> |
asReadOnlyList(java.util.List<T> list)
Returns a read-only list.
|
static <T,K> java.util.Map<T,K> |
asReadOnlyMap(java.util.Map<T,K> map) |
static boolean |
equals(java.lang.Object o1,
java.lang.Object o2)
Equality function that properly handles arrays,
lists, maps, lists of arrays, and maps of arrays.
|
static boolean |
equals(java.lang.Object o1,
java.lang.Object o2,
boolean ignoreCase) |
static <T> int |
forceCompare(java.lang.Object o1,
java.lang.Object o2)
Forces the compare of two comparable objects and removes any warnings
generated by the compiler.
|
static int |
hashCode(java.lang.Object o)
hashCode function that properly handles arrays,
collections, maps, collections of arrays, and maps of arrays.
|
static <T> java.util.Set<T> |
intersection(java.util.Collection<T> c1,
java.util.Collection<T> c2)
Returns the intersection of two
Collection s as an unmodifiable
set. |
static boolean |
isCaseInsensitiveMap(java.util.Map<?,?> map)
Returns true if the given map is a case-insensitive map
|
static boolean |
isCaseInsensitiveSet(java.util.Set<?> set)
Returns true if the given set is a case-insensitive set
|
static <T> boolean |
isEmpty(java.util.Collection<T> c)
Determine if
Collection is empty or not, protects against null
being passed in. |
static <T> java.util.SortedMap<java.lang.String,T> |
newCaseInsensitiveMap()
Creates a case-insenstive map
|
static java.util.SortedSet<java.lang.String> |
newCaseInsensitiveSet()
Creates a case-insensitive set
|
static <T> java.util.List<T> |
newList(java.util.Collection<? extends T> c)
Create a modifiable list from the
Collection provided. |
static <T> java.util.List<T> |
newList(T... arr)
Create a modifiable list from the arguments.
|
static java.util.Map<java.lang.String,java.lang.String> |
newMap(java.util.Properties properties) |
static <T,K> java.util.Map<T,K> |
newMap(T[] k,
K[] v)
Builds a map from two arrays.
|
static <T,K> java.util.Map<T,K> |
newMap(T k0,
K v0) |
static <T,K> java.util.Map<T,K> |
newMap(T k0,
K v0,
T k1,
K v1) |
static <T,K> java.util.Map<T,K> |
newMap(T k0,
K v0,
T k1,
K v1,
T k2,
K v2) |
static <T,K> java.util.Map<T,K> |
newMap(T k0,
K v0,
T k1,
K v1,
T k2,
K v2,
T k3,
K v3) |
static <T,K> java.util.Map<T,K> |
newMap(T k0,
K v0,
T k1,
K v1,
T k2,
K v2,
T k3,
K v3,
T k4,
K v4) |
static <T,K> java.util.Map<T,K> |
newMap(T k0,
K v0,
T k1,
K v1,
T k2,
K v2,
T k3,
K v3,
T k4,
K v4,
T k5,
K v5) |
static <T,K> java.util.Map<T,K> |
newMapFromLists(java.util.List<T> keys,
java.util.List<K> values)
Converts two
List to a map. |
static <T> java.util.List<T> |
newReadOnlyList(java.util.Collection<? extends T> c)
Creates an unmodifiable
List from a collection. |
static <T> java.util.List<T> |
newReadOnlyList(java.util.List<? extends T> list)
Create an unmodifiable
List based on the List passed in
checks for null and returns an empty list if null is passed in. |
static <T> java.util.List<T> |
newReadOnlyList(T... obj)
Creates an unmodifiable
List from a variable number arguments. |
static <T,K> java.util.Map<T,K> |
newReadOnlyMap(java.util.Map<T,K> map) |
static <T> java.util.Map<T,T> |
newReadOnlyMap(T[][] kv) |
static <T> java.util.Set<T> |
newReadOnlySet(java.util.Collection<T> c)
Creates an unmodifiable set from a
Collection . |
static <T> java.util.Set<T> |
newReadOnlySet(T... arr)
Creates an unmodifiable set from a variable number arguments.
|
static <T> java.util.Set<T> |
newSet(java.util.Collection<T> c)
Creates a set that can be modified from the
Collection provided. |
static <T> java.util.Set<T> |
newSet(T... arr)
Creates a set that can be modified from the arguments.
|
static <T extends java.lang.Object & java.lang.Comparable<? super T>> |
newSortedList(java.util.Collection<? extends T> col)
Create a modifiable sorted
List based on the Collection
provided. |
static <T> java.util.Collection<T> |
nullAsEmpty(java.util.Collection<T> c)
Protects from
null and returns a new instance of
ArrayList if the parameter c is null. |
static <T> java.util.List<T> |
nullAsEmpty(java.util.List<T> list)
Protects from
null and returns a new instance of
ArrayList if the parameter list is
null . |
static <T,K> java.util.Map<T,K> |
nullAsEmpty(java.util.Map<T,K> map)
Protects from
null and returns a new instance of
HashMap if the parameter map is null . |
static <T> java.util.Set<T> |
nullAsEmpty(java.util.Set<T> set)
Protects from
null and returns a new instance of
HashSet if the parameter set is null . |
static <T> java.util.Set<T> |
union(java.util.Collection<T> c1,
java.util.Collection<T> c2)
Returns the union of two
Collection s as an unmodifiable set. |
static <T> java.util.Collection<T> |
unique(java.util.Collection<T> c)
Use
HashSet to create a unique Collection based on the
one passed in. |
public static java.util.SortedSet<java.lang.String> newCaseInsensitiveSet()
public static boolean isCaseInsensitiveSet(java.util.Set<?> set)
set
- The set. May be null.public static <T> java.util.SortedMap<java.lang.String,T> newCaseInsensitiveMap()
T
- The object type of the mappublic static boolean isCaseInsensitiveMap(java.util.Map<?,?> map)
map
- The map. May be null.public static <T> java.util.Collection<T> nullAsEmpty(java.util.Collection<T> c)
null
and returns a new instance of
ArrayList
if the parameter c is null.
Otherwise return the parameter that was passed in.public static <T,K> java.util.Map<T,K> nullAsEmpty(java.util.Map<T,K> map)
null
and returns a new instance of
HashMap
if the parameter map
is null
.
Otherwise return the parameter that was passed in.public static <T> java.util.Set<T> nullAsEmpty(java.util.Set<T> set)
null
and returns a new instance of
HashSet
if the parameter set
is null
.
Otherwise return the parameter that was passed in.public static <T> java.util.List<T> nullAsEmpty(java.util.List<T> list)
null
and returns a new instance of
ArrayList
if the parameter list
is
null
. Otherwise return the parameter that was passed in.public static <T> boolean isEmpty(java.util.Collection<T> c)
Collection
is empty or not, protects against null
being passed in.public static <T> java.util.Collection<T> unique(java.util.Collection<T> c)
HashSet
to create a unique Collection
based on the
one passed in. The method protects against null. The
returned Collection
is unmodifiable.public static <T,K> java.util.Map<T,K> newReadOnlyMap(java.util.Map<T,K> map)
public static <T,K> java.util.Map<T,K> asReadOnlyMap(java.util.Map<T,K> map)
public static <T> java.util.Map<T,T> newReadOnlyMap(T[][] kv)
public static <T,K> java.util.Map<T,K> newMapFromLists(java.util.List<T> keys, java.util.List<K> values)
List
to a map. The order is important here because
each key will map to one value.public static java.util.Map<java.lang.String,java.lang.String> newMap(java.util.Properties properties)
public static <T,K> java.util.Map<T,K> newMap(T k0, K v0)
public static <T,K> java.util.Map<T,K> newMap(T k0, K v0, T k1, K v1)
public static <T,K> java.util.Map<T,K> newMap(T k0, K v0, T k1, K v1, T k2, K v2)
public static <T,K> java.util.Map<T,K> newMap(T k0, K v0, T k1, K v1, T k2, K v2, T k3, K v3)
public static <T,K> java.util.Map<T,K> newMap(T k0, K v0, T k1, K v1, T k2, K v2, T k3, K v3, T k4, K v4)
public static <T,K> java.util.Map<T,K> newMap(T k0, K v0, T k1, K v1, T k2, K v2, T k3, K v3, T k4, K v4, T k5, K v5)
public static <T,K> java.util.Map<T,K> newMap(T[] k, K[] v)
k
- Array of keys.v
- Array of values.public static <T> java.util.Set<T> newSet(java.util.Collection<T> c)
Collection
provided.public static <T> java.util.Set<T> newSet(T... arr)
public static <T> java.util.Set<T> newReadOnlySet(T... arr)
public static <T> java.util.Set<T> newReadOnlySet(java.util.Collection<T> c)
Collection
.public static <T> java.util.Set<T> union(java.util.Collection<T> c1, java.util.Collection<T> c2)
Collection
s as an unmodifiable set.public static <T> java.util.Set<T> intersection(java.util.Collection<T> c1, java.util.Collection<T> c2)
Collection
s as an unmodifiable
set.public static <T extends java.lang.Object & java.lang.Comparable<? super T>> java.util.List<T> newSortedList(java.util.Collection<? extends T> col)
List
based on the Collection
provided.public static <T> java.util.List<T> newList(java.util.Collection<? extends T> c)
Collection
provided. The return
value is backed by an ArrayList
.public static <T> java.util.List<T> newList(T... arr)
ArrayList
.public static <T> java.util.List<T> newReadOnlyList(java.util.List<? extends T> list)
List
based on the List
passed in
checks for null and returns an empty list if null is passed in. This one
insures that the order is maintained between lists.public static <T> java.util.List<T> newReadOnlyList(T... obj)
List
from a variable number arguments.public static <T> java.util.List<T> newReadOnlyList(java.util.Collection<? extends T> c)
List
from a collection.public static <T> java.util.List<T> asReadOnlyList(java.util.List<T> list)
T
- The type of the listlist
- The list or null.public static <T> int forceCompare(java.lang.Object o1, java.lang.Object o2)
Comparable
the integer value of o1.compareTo(o2).public static int hashCode(java.lang.Object o)
o
- The object. May be null.public static boolean equals(java.lang.Object o1, java.lang.Object o2)
NOTE: For Sets, this relies on the equals method of the Set to do the right thing. This is a reasonable assumption since, in order for Sets to behave properly as Sets, their values must already have a proper implementation of equals. (Or they must be specialized Sets that define a custom comparator that knows how to do the right thing). The same holds true for Map keys. Map values, on the other hand, are compared (so Map values can be arrays).
o1
- The first object. May be null.o2
- The second object. May be null.public static boolean equals(java.lang.Object o1, java.lang.Object o2, boolean ignoreCase)