public final class IterableUtil
extends java.lang.Object
Iterable-related utility methods.| Modifier and Type | Class and Description |
|---|---|
static interface |
IterableUtil.ElementWithContext<T>
A helper interface which extends the "iterator" pattern with the possibility to access not only the "current"
element, but also the previous and next element.
|
| Modifier and Type | Method and Description |
|---|---|
static <T> java.util.Collection<T> |
asCollection(java.lang.Iterable<T> delegate)
Wraps the given
Iterable in a collection, which, as enforced by the nature of the Iterable,
supports only element removal. |
static <T> java.lang.Iterable<T> |
concat(java.lang.Iterable<? extends java.lang.Iterable<? extends T>> elements) |
static <T> java.lang.Iterable<T> |
concat(java.lang.Iterable<? extends T> element1,
java.lang.Iterable<? extends T> element2) |
static <T> java.lang.Iterable<T> |
concat(java.lang.Iterable<? extends T> element1,
java.lang.Iterable<? extends T> element2,
java.lang.Iterable<? extends T> element3) |
static <T> java.lang.Iterable<T> |
concat(java.lang.Iterable<? extends T> element1,
java.lang.Iterable<? extends T> element2,
java.lang.Iterable<? extends T> element3,
java.lang.Iterable<? extends T> element4) |
static <T> java.lang.Iterable<T> |
concat(java.lang.Iterable<? extends T> element1,
T... element2) |
static <T> java.lang.Iterable<T> |
concat(T element1,
java.lang.Iterable<? extends T> element2) |
static <T> java.lang.Iterable<T> |
concat(T element1,
T element2,
java.lang.Iterable<? extends T> element3) |
static <T> java.lang.Iterable<T> |
filter(java.lang.Iterable<? extends T> delegate,
Predicate<? super T> qualifies)
Returns an
Iterable which hides the elements of the delegate which do not qualifiy. |
static <T> java.lang.Iterable<IterableUtil.ElementWithContext<T>> |
iterableWithContext(java.lang.Iterable<? extends T> delegate) |
static <T> java.util.Iterator<IterableUtil.ElementWithContext<T>> |
iteratorWithContext(java.lang.Iterable<? extends T> iterable) |
static <T> java.lang.Iterable<T> |
repeat(T subject,
int n) |
static <E> java.lang.Iterable<E> |
reverseList(java.util.List<? extends E> list) |
static <I,O> java.lang.Iterable<O> |
transform(java.lang.Iterable<? extends I> delegate,
Transformer<? super I,? extends O> transform)
Returns an iterable which contains the transformed elements of the delegate
|
static <T> java.lang.Iterable<T> |
unmodifiableIterable(java.lang.Iterable<? extends T> i) |
public static <T> java.lang.Iterable<T> unmodifiableIterable(java.lang.Iterable<? extends T> i)
Iterable which can't be modified through the Iterator.remove() methodpublic static <T> java.lang.Iterable<T> repeat(T subject,
int n)
Iterable producing the given subject n timespublic static <E> java.lang.Iterable<E> reverseList(java.util.List<? extends E> list)
Iterable that traverses the elements of the given List in reverse order.public static <T> java.lang.Iterable<T> concat(T element1,
java.lang.Iterable<? extends T> element2)
element1 and the elements of element2public static <T> java.lang.Iterable<T> concat(T element1,
T element2,
java.lang.Iterable<? extends T> element3)
public static <T> java.lang.Iterable<T> concat(java.lang.Iterable<? extends T> element1,
T... element2)
element1 and element2public static <T> java.lang.Iterable<T> concat(java.lang.Iterable<? extends T> element1,
java.lang.Iterable<? extends T> element2)
element1 and element2public static <T> java.lang.Iterable<T> concat(java.lang.Iterable<? extends T> element1,
java.lang.Iterable<? extends T> element2,
java.lang.Iterable<? extends T> element3)
element1, element2 and element3public static <T> java.lang.Iterable<T> concat(java.lang.Iterable<? extends T> element1,
java.lang.Iterable<? extends T> element2,
java.lang.Iterable<? extends T> element3,
java.lang.Iterable<? extends T> element4)
element1, element2, element3 and element4public static <T> java.lang.Iterable<T> concat(java.lang.Iterable<? extends java.lang.Iterable<? extends T>> elements)
elementspublic static <T> java.lang.Iterable<T> filter(java.lang.Iterable<? extends T> delegate,
Predicate<? super T> qualifies)
Iterable which hides the elements of the delegate which do not qualifiy.public static <I,O> java.lang.Iterable<O> transform(java.lang.Iterable<? extends I> delegate,
Transformer<? super I,? extends O> transform)
public static <T> java.util.Collection<T> asCollection(java.lang.Iterable<T> delegate)
Iterable in a collection, which, as enforced by the nature of the Iterable,
supports only element removal.public static <T> java.lang.Iterable<IterableUtil.ElementWithContext<T>> iterableWithContext(java.lang.Iterable<? extends T> delegate)
public static <T> java.util.Iterator<IterableUtil.ElementWithContext<T>> iteratorWithContext(java.lang.Iterable<? extends T> iterable)
iterable - Must produce non-null valuesIterableUtil.ElementWithContexts for the elements of the given
iterable