|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object eu.monnetproject.lemon.conversions.lmf.CollectionFunctions
public class CollectionFunctions
Static extensions to the collection API to give functional-programming-like
operations. If you use this class it is strongly recommended that you static
import it.
Example usage:
if(exists(list, new Criterion
public boolean f(Integer i) {
return i > 10;
}
})) {
System.out.println("List contains an elements larger than 10");
}
Nested Class Summary | |
---|---|
static interface |
CollectionFunctions.Converter<E,F>
A single abstract method interface for a function of arity 1:1 |
static interface |
CollectionFunctions.Criterion<E>
A single abstract method interface returning a boolean |
static interface |
CollectionFunctions.FoldFunction<F,E>
A single abstract method interface for a function of arity 2:1 |
Field Summary | |
---|---|
static CollectionFunctions.Converter |
IDENTITY
Convenience SAM function that returns the same value |
Method Summary | ||
---|---|---|
static
|
contains(E[] array,
E element)
Returns true if the array contains a specific element. |
|
static
|
eq(E e)
Convenience equivalence function |
|
static
|
exists(Collection<E> collection,
CollectionFunctions.Criterion<E> f)
Returns true if the collection has an element satisfying the condition |
|
static
|
exists(E[] array,
CollectionFunctions.Criterion<E> f)
Returns true if the array has an element satisfying the condition |
|
static
|
filter(E[] array,
CollectionFunctions.Criterion<E> f)
Return an array containing all elements matching a specific criterion |
|
static
|
filter(List<E> list,
CollectionFunctions.Criterion<E> f)
Return a collection containing all elements matching a specific criterion |
|
static
|
filter(Set<E> set,
CollectionFunctions.Criterion<E> f)
Return a collection containing all elements matching a specific criterion |
|
static
|
filterByKey(Map<E,F> map,
CollectionFunctions.Criterion<E> f)
Return a map containing all entries whose keys match a specific criterion |
|
static
|
filterByValue(Map<E,F> map,
CollectionFunctions.Criterion<F> f)
Return a map containing all entries whose values match a specific criterion |
|
static
|
find(Collection<E> collection,
CollectionFunctions.Criterion<E> f)
Find the first element of the collection satisfying the condition |
|
static
|
find(E[] array,
CollectionFunctions.Criterion<E> f)
Find the first element of the array satisfying the condition |
|
static
|
foldLeft(Collection<E> collection,
F initial,
CollectionFunctions.FoldFunction<F,E> f)
Fold the collection to the left. |
|
static
|
foldLeft(E[] array,
F initial,
CollectionFunctions.FoldFunction<F,E> f)
Fold the array to the left. |
|
static
|
forall(Collection<E> collection,
CollectionFunctions.Criterion<E> f)
Check if a condition holds for all elements in the collection |
|
static
|
forall(E[] array,
CollectionFunctions.Criterion<E> f)
Check if a condition holds for all elements in the array |
|
static
|
joinString(Collection<StrLike> collection,
String separator)
Create a string from a collection using a particular separator String. |
|
static
|
map(E[] array,
CollectionFunctions.Converter<E,F> f)
Convert each element of an array |
|
static
|
map(List<E> list,
CollectionFunctions.Converter<E,F> f)
Convert each element of a list |
|
static
|
map(Map<E,F> map,
CollectionFunctions.Converter<E,G> f1,
CollectionFunctions.Converter<F,H> f2)
Convert each element of a map |
|
static
|
map(Set<E> set,
CollectionFunctions.Converter<E,F> f)
Convert each element of a set |
|
static
|
neq(E e)
Convenience equivalence function |
|
static
|
partition(List<E> list,
CollectionFunctions.Criterion<E> f)
Remove all elements matching a criterion from a list and return a new list containing all elements matching the criterion |
|
static
|
partition(Set<E> set,
CollectionFunctions.Criterion<E> f)
Remove all elements matching a criterion from a set and return a new set containing all elements matching the criterion |
|
static
|
partitionByKey(Map<E,F> map,
CollectionFunctions.Criterion<E> f)
Remove all entries whose keys match a criterion from a set and return a new map containing all entries matching the criterion |
|
static
|
partitionByValue(Map<E,F> map,
CollectionFunctions.Criterion<F> f)
Remove all entries whose values match a criterion from a set and return a new map containing all entries matching the criterion |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final CollectionFunctions.Converter IDENTITY
Method Detail |
---|
public static <E> boolean contains(E[] array, E element)
Object.equals()
array
- The arrayelement
- The element
public static <E> boolean exists(E[] array, CollectionFunctions.Criterion<E> f)
array
- The arrayf
- The functionpublic static <E> boolean exists(Collection<E> collection, CollectionFunctions.Criterion<E> f)
collection
- The collectionf
- The functionpublic static <E> E[] filter(E[] array, CollectionFunctions.Criterion<E> f)
array
- The arrayf
- The functionpublic static <E> List<E> filter(List<E> list, CollectionFunctions.Criterion<E> f)
list
- The listf
- The functionpublic static <E> Set<E> filter(Set<E> set, CollectionFunctions.Criterion<E> f)
set
- The listf
- The functionpublic static <E,F> Map<E,F> filterByKey(Map<E,F> map, CollectionFunctions.Criterion<E> f)
map
- The mapf
- The functionpublic static <E,F> Map<E,F> filterByValue(Map<E,F> map, CollectionFunctions.Criterion<F> f)
map
- The mapf
- The functionpublic static <E> E find(E[] array, CollectionFunctions.Criterion<E> f)
array
- The arrayf
- The condition
public static <E> E find(Collection<E> collection, CollectionFunctions.Criterion<E> f)
collection
- The collectionf
- The condition
public static <E,F> F foldLeft(E[] array, F initial, CollectionFunctions.FoldFunction<F,E> f)
array
- The arrayinitial
- The initial valuef
- The folding function
public static <E,F> F foldLeft(Collection<E> collection, F initial, CollectionFunctions.FoldFunction<F,E> f)
foldLeft(list, 0, new SAM2() { public Integer f(Integer v1, Integer v2) { return v1 + v2 } });
array
- The arrayinitial
- The initial valuef
- The folding function
public static <E> boolean forall(E[] array, CollectionFunctions.Criterion<E> f)
array
- The arrayf
- The conditionpublic static <E> boolean forall(Collection<E> collection, CollectionFunctions.Criterion<E> f)
array
- The collectionf
- The conditionpublic static <E,F> F[] map(E[] array, CollectionFunctions.Converter<E,F> f)
array
- The arrayf
- The conversion functionpublic static <E,F> List<F> map(List<E> list, CollectionFunctions.Converter<E,F> f)
list
- The listf
- The conversion functionpublic static <E,F> Set<F> map(Set<E> set, CollectionFunctions.Converter<E,F> f)
set
- The setf
- The conversion functionpublic static <E,F,G,H> Map<G,H> map(Map<E,F> map, CollectionFunctions.Converter<E,G> f1, CollectionFunctions.Converter<F,H> f2)
map
- The mapf1
- The key conversion functionf2
- The value conversion functionpublic static <E> List<E> partition(List<E> list, CollectionFunctions.Criterion<E> f)
list
- The listf
- The criterionpublic static <E> Set<E> partition(Set<E> set, CollectionFunctions.Criterion<E> f)
set
- The setf
- The criterionpublic static <E,F> Map<E,F> partitionByKey(Map<E,F> map, CollectionFunctions.Criterion<E> f)
map
- The mapf
- The criterionpublic static <E,F> Map<E,F> partitionByValue(Map<E,F> map, CollectionFunctions.Criterion<F> f)
map
- The mapf
- The criterionpublic static <StrLike extends CharSequence> String joinString(Collection<StrLike> collection, String separator)
collection
- The collectionseparator
- The separator
public static <E> CollectionFunctions.Criterion<E> eq(E e)
public static <E> CollectionFunctions.Criterion<E> neq(E e)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |