Package com.strobel.core
Class CollectionUtilities
- java.lang.Object
-
- com.strobel.core.CollectionUtilities
-
public final class CollectionUtilities extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
CollectionUtilities.AbstractIterator<T>
private static class
CollectionUtilities.Buffer<E>
private static class
CollectionUtilities.OfTypeIterator<T,R>
private static class
CollectionUtilities.SkipIterator<T>
private static class
CollectionUtilities.TakeIterator<T>
private static class
CollectionUtilities.WhereSelectIterableIterator<T,R>
-
Field Summary
Fields Modifier and Type Field Description private static Supplier
HASH_MAP_SUPPLIER
private static Supplier
IDENTITY_MAP_SUPPLIER
private static Supplier
LINKED_HASH_MAP_SUPPLIER
private static Supplier
LIST_SUPPLIER
private static Supplier
SET_SUPPLIER
-
Constructor Summary
Constructors Constructor Description CollectionUtilities()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <T> boolean
all(java.lang.Iterable<T> collection, Predicate<? super T> predicate)
static <T> boolean
any(java.lang.Iterable<T> collection)
static <T> boolean
any(java.lang.Iterable<T> collection, Predicate<? super T> predicate)
static <T> boolean
contains(java.lang.Iterable<? super T> collection, T node)
static <T> T
first(java.lang.Iterable<T> collection)
static <T> T
first(java.lang.Iterable<T> collection, Predicate<T> predicate)
static <T> T
first(java.util.List<T> list)
static <T> int
firstIndexWhere(java.lang.Iterable<T> collection, Predicate<T> predicate)
static <T> T
firstOrDefault(java.lang.Iterable<T> collection)
static <T> T
firstOrDefault(java.lang.Iterable<T> collection, Predicate<T> predicate)
static <T> T
get(java.lang.Iterable<T> collection, int index)
static <T> T
get(java.util.List<T> list, int index)
static <T> T
getOrDefault(java.lang.Iterable<T> collection, int index)
static <T> T
getOrDefault(java.util.List<T> collection, int index)
static int
hashCode(java.lang.Iterable<?> sequence)
static int
hashCode(java.util.List<?> sequence)
static <K,V>
Supplier<java.util.Map<K,V>>hashMapFactory()
static <K,V>
Supplier<java.util.Map<K,V>>identityMapFactory()
static <T> int
indexOf(java.lang.Iterable<? super T> collection, T item)
static <T> int
indexOfByIdentity(java.lang.Iterable<?> collection, T item)
static <T> int
indexOfByIdentity(java.util.List<?> collection, T item)
static <T> T
last(java.lang.Iterable<T> collection)
static <T> T
last(java.lang.Iterable<T> collection, Predicate<T> predicate)
static <T> T
last(java.util.List<T> list)
static <T> int
lastIndexWhere(java.lang.Iterable<T> collection, Predicate<T> predicate)
static <T> T
lastOrDefault(java.lang.Iterable<T> collection)
static <T> T
lastOrDefault(java.lang.Iterable<T> collection, Predicate<T> predicate)
static <K,V>
Supplier<java.util.Map<K,V>>linekdHashMapFactory()
static <T> Supplier<java.util.List<T>>
listFactory()
static <T,R>
java.lang.Iterable<R>ofType(java.lang.Iterable<T> collection, java.lang.Class<R> type)
static <V,K>
voidremoveAll(java.util.Map<K,V> map, java.util.List<K> keys)
static <T,R>
java.lang.Iterable<R>select(java.lang.Iterable<T> source, Selector<? super T,? extends R> selector)
static <T> boolean
sequenceDeepEquals(java.lang.Iterable<? extends T> first, java.lang.Iterable<? extends T> second)
static <T> boolean
sequenceDeepEquals(java.util.List<? extends T> first, java.util.List<? extends T> second)
private static boolean
sequenceDeepEqualsCore(java.lang.Object first, java.lang.Object second)
static <T> boolean
sequenceEquals(java.lang.Iterable<? extends T> first, java.lang.Iterable<? extends T> second)
static <T> boolean
sequenceEquals(java.util.List<? extends T> first, java.util.List<? extends T> second)
static <T> Supplier<java.util.Set<T>>
setFactory()
static <T> T
single(java.lang.Iterable<T> collection)
static <T> T
single(java.util.List<T> list)
static <T> T
singleOrDefault(java.lang.Iterable<T> collection)
static <T> T
singleOrDefault(java.util.List<T> list)
static <T> java.lang.Iterable<T>
skip(java.lang.Iterable<T> collection, int count)
static <T> java.lang.Iterable<T>
skipWhile(java.lang.Iterable<T> collection, Predicate<? super T> filter)
static <T> java.lang.Iterable<T>
take(java.lang.Iterable<T> collection, int count)
static <T> java.lang.Iterable<T>
takeWhile(java.lang.Iterable<T> collection, Predicate<? super T> filter)
static <E> E[]
toArray(java.lang.Class<E> elementType, java.lang.Iterable<? extends E> sequence)
static <T> java.util.List<T>
toList(java.lang.Iterable<? extends T> collection)
static <T> java.util.List<T>
toList(java.util.Enumeration<T> collection)
static <T> java.lang.Iterable<T>
where(java.lang.Iterable<T> source, Predicate<? super T> filter)
-
-
-
Field Detail
-
IDENTITY_MAP_SUPPLIER
private static final Supplier IDENTITY_MAP_SUPPLIER
-
HASH_MAP_SUPPLIER
private static final Supplier HASH_MAP_SUPPLIER
-
LINKED_HASH_MAP_SUPPLIER
private static final Supplier LINKED_HASH_MAP_SUPPLIER
-
LIST_SUPPLIER
private static final Supplier LIST_SUPPLIER
-
SET_SUPPLIER
private static final Supplier SET_SUPPLIER
-
-
Method Detail
-
setFactory
public static <T> Supplier<java.util.Set<T>> setFactory()
-
listFactory
public static <T> Supplier<java.util.List<T>> listFactory()
-
hashMapFactory
public static <K,V> Supplier<java.util.Map<K,V>> hashMapFactory()
-
linekdHashMapFactory
public static <K,V> Supplier<java.util.Map<K,V>> linekdHashMapFactory()
-
identityMapFactory
public static <K,V> Supplier<java.util.Map<K,V>> identityMapFactory()
-
indexOfByIdentity
public static <T> int indexOfByIdentity(java.util.List<?> collection, T item)
-
indexOfByIdentity
public static <T> int indexOfByIdentity(java.lang.Iterable<?> collection, T item)
-
indexOf
public static <T> int indexOf(java.lang.Iterable<? super T> collection, T item)
-
toList
public static <T> java.util.List<T> toList(java.util.Enumeration<T> collection)
-
toList
public static <T> java.util.List<T> toList(java.lang.Iterable<? extends T> collection)
-
getOrDefault
public static <T> T getOrDefault(java.lang.Iterable<T> collection, int index)
-
getOrDefault
public static <T> T getOrDefault(java.util.List<T> collection, int index)
-
get
public static <T> T get(java.lang.Iterable<T> collection, int index)
-
get
public static <T> T get(java.util.List<T> list, int index)
-
single
public static <T> T single(java.util.List<T> list)
-
singleOrDefault
public static <T> T singleOrDefault(java.util.List<T> list)
-
single
public static <T> T single(java.lang.Iterable<T> collection)
-
first
public static <T> T first(java.util.List<T> list)
-
first
public static <T> T first(java.lang.Iterable<T> collection)
-
singleOrDefault
public static <T> T singleOrDefault(java.lang.Iterable<T> collection)
-
ofType
public static <T,R> java.lang.Iterable<R> ofType(java.lang.Iterable<T> collection, java.lang.Class<R> type)
-
firstOrDefault
public static <T> T firstOrDefault(java.lang.Iterable<T> collection)
-
first
public static <T> T first(java.lang.Iterable<T> collection, Predicate<T> predicate)
-
firstOrDefault
public static <T> T firstOrDefault(java.lang.Iterable<T> collection, Predicate<T> predicate)
-
last
public static <T> T last(java.util.List<T> list)
-
last
public static <T> T last(java.lang.Iterable<T> collection)
-
lastOrDefault
public static <T> T lastOrDefault(java.lang.Iterable<T> collection)
-
firstIndexWhere
public static <T> int firstIndexWhere(java.lang.Iterable<T> collection, Predicate<T> predicate)
-
lastIndexWhere
public static <T> int lastIndexWhere(java.lang.Iterable<T> collection, Predicate<T> predicate)
-
last
public static <T> T last(java.lang.Iterable<T> collection, Predicate<T> predicate)
-
lastOrDefault
public static <T> T lastOrDefault(java.lang.Iterable<T> collection, Predicate<T> predicate)
-
contains
public static <T> boolean contains(java.lang.Iterable<? super T> collection, T node)
-
any
public static <T> boolean any(java.lang.Iterable<T> collection)
-
skip
public static <T> java.lang.Iterable<T> skip(java.lang.Iterable<T> collection, int count)
-
skipWhile
public static <T> java.lang.Iterable<T> skipWhile(java.lang.Iterable<T> collection, Predicate<? super T> filter)
-
take
public static <T> java.lang.Iterable<T> take(java.lang.Iterable<T> collection, int count)
-
takeWhile
public static <T> java.lang.Iterable<T> takeWhile(java.lang.Iterable<T> collection, Predicate<? super T> filter)
-
any
public static <T> boolean any(java.lang.Iterable<T> collection, Predicate<? super T> predicate)
-
all
public static <T> boolean all(java.lang.Iterable<T> collection, Predicate<? super T> predicate)
-
where
public static <T> java.lang.Iterable<T> where(java.lang.Iterable<T> source, Predicate<? super T> filter)
-
select
public static <T,R> java.lang.Iterable<R> select(java.lang.Iterable<T> source, Selector<? super T,? extends R> selector)
-
hashCode
public static int hashCode(java.util.List<?> sequence)
-
hashCode
public static int hashCode(java.lang.Iterable<?> sequence)
-
sequenceEquals
public static <T> boolean sequenceEquals(java.util.List<? extends T> first, java.util.List<? extends T> second)
-
sequenceEquals
public static <T> boolean sequenceEquals(java.lang.Iterable<? extends T> first, java.lang.Iterable<? extends T> second)
-
sequenceDeepEquals
public static <T> boolean sequenceDeepEquals(java.util.List<? extends T> first, java.util.List<? extends T> second)
-
sequenceDeepEquals
public static <T> boolean sequenceDeepEquals(java.lang.Iterable<? extends T> first, java.lang.Iterable<? extends T> second)
-
sequenceDeepEqualsCore
private static boolean sequenceDeepEqualsCore(java.lang.Object first, java.lang.Object second)
-
toArray
public static <E> E[] toArray(java.lang.Class<E> elementType, java.lang.Iterable<? extends E> sequence)
-
-