Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.google.common.collect
Class Collections2

    java.lang.Object
      com.google.common.collect.Collections2

    public final class Collections2

extends Object

Provides static methods for working with `Collection` instances.

Author:
  Chris Povirk, Mike Bostock, Jared Levy

Method Summary
`static
`<E> Collection<E>`
` | `filter(Collection<E> unfiltered, Predicate<? super E> predicate)` Returns the elements of `unfiltered` that satisfy a predicate.
`static
`<F,T> Collection<T>`
` | `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

### filter

    public static <E> Collection<E> filter(Collection<E> unfiltered,
                                           Predicate<? super E> predicate)

  Returns the elements of `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. The collection's `add()` and `addAll()` methods throw an `IllegalArgumentException` if an element that doesn't satisfy the predicate is provided. 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.

### transform

    public static <F,T> Collection<T> transform(Collection<F> fromCollection,
                                                Function<? super F,T> function)

  Returns a collection that applies `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.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD