|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.google.common.collect.Collections2
@GwtCompatible public final class Collections2
Provides static methods for working with Collection
instances.
Method Summary | ||
---|---|---|
static
|
filter(Collection<E> unfiltered,
Predicate<? super E> predicate)
Returns the elements of unfiltered that satisfy a predicate. |
|
static
|
transform(Collection<F> fromCollection,
Function<? super F,T> function)
Returns a collection that applies function to each element of
fromCollection . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static <E> Collection<E> filter(Collection<E> unfiltered, Predicate<? super E> predicate)
unfiltered
that satisfy a predicate. The
returned collection is a live view of unfiltered
; changes to one
affect the other.
The resulting collection's iterator does not support remove()
,
but all other collection methods are supported. When given an element that
doesn't satisfy the predicate, the collection's add()
and addAll()
methods throw an IllegalArgumentException
. When methods
such as removeAll()
and clear()
are called on the filtered
collection, only elements that satisfy the filter will be removed from the
underlying collection.
The returned collection isn't threadsafe or serializable, even if
unfiltered
is.
Many of the filtered collection's methods, such as size()
,
iterate across every element in the underlying collection and determine
which elements satisfy the filter. When a live view is not needed,
it may be faster to copy Iterables.filter(unfiltered, predicate)
and use the copy.
Warning: predicate
must be consistent with equals,
as documented at Predicate.apply(T)
. Do not provide a predicate such
as Predicates.instanceOf(ArrayList.class)
, which is inconsistent
with equals. (See Iterables.filter(Iterable, Class)
for related
functionality.)
public static <F,T> Collection<T> transform(Collection<F> fromCollection, Function<? super F,T> function)
function
to each element of
fromCollection
. The returned collection is a live view of fromCollection
; changes to one affect the other.
The returned collection's add()
and addAll()
methods
throw an UnsupportedOperationException
. All other collection
methods are supported, as long as fromCollection
supports them.
The returned collection isn't threadsafe or serializable, even if
fromCollection
is.
When a live view is not needed, it may be faster to copy the transformed collection and use the copy.
If the input Collection
is known to be a List
, consider
Lists.transform(java.util.List
. If only an Iterable
is available, use
Iterables.transform(java.lang.Iterable
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |