public class DefaultGroovyMethods extends DefaultGroovyMethodsSupport
This class defines new groovy methods which appear on normal JDK
classes inside the Groovy environment. Static methods are used with the
first parameter being the destination class,
i.e. public static String reverse(String self)
provides a reverse()
method for String
.
NOTE: While this class contains many 'public' static methods, it is primarily regarded as an internal class (its internal package name suggests this also). We value backwards compatibility of these methods when used within Groovy but value less backwards compatibility at the Java method call level. I.e. future versions of Groovy may remove or move a method call in this file but would normally aim to keep the method available from within Groovy.
Modifiers | Name | Description |
---|---|---|
static Class[] |
ADDITIONAL_CLASSES |
|
static Class[] |
DGM_LIKE_CLASSES |
Type Params | Return Type | Name and description |
---|---|---|
|
public static int |
abs(Number number) |
|
public static long |
abs(Long number) Get the absolute value |
|
public static float |
abs(Float number) Get the absolute value |
|
public static double |
abs(Double number) Get the absolute value |
<T> |
public static boolean |
addAll(Collection<T> self, T[] items) Modifies the collection by adding all of the elements in the specified array to the collection. |
<T> |
public static boolean |
addAll(List<T> self, int index, T[] items) Modifies this list by inserting all of the elements in the specified array into the list at the specified position. |
<T> |
public static boolean |
addAll(Collection<T> self, Iterator<? extends T> items) Adds all items from the iterator to the Collection. |
<T> |
public static boolean |
addAll(Collection<T> self, Iterable<? extends T> items) Adds all items from the iterable to the Collection. |
|
public static void |
addShutdownHook(Object self, Closure closure) Allows the usage of addShutdownHook without getting the runtime first. |
|
public static Number |
and(Number left, Number right) Bitwise AND together two Numbers. |
|
public static BitSet |
and(BitSet left, BitSet right) Bitwise AND together two BitSets. |
|
public static Boolean |
and(Boolean left, Boolean right) Logical conjunction of two boolean operators. |
|
public static boolean |
any(Object self, Closure predicate) Iterates over the contents of an object or collection, and checks whether a predicate is valid for at least one element. |
<T> |
public static boolean |
any(Iterator<T> self, Closure predicate) Iterates over the contents of an iterator, and checks whether a predicate is valid for at least one element. |
<T> |
public static boolean |
any(Iterable<T> self, Closure predicate) Iterates over the contents of an iterable, and checks whether a predicate is valid for at least one element. |
<T> |
public static boolean |
any(T[] self, Closure predicate) Iterates over the contents of an Array, and checks whether a predicate is valid for at least one element. |
<K, V> |
public static boolean |
any(Map<K, V> self, Closure<?> predicate) Iterates over the entries of a map, and checks whether a predicate is valid for at least one entry. |
|
public static boolean |
any(Object self) Iterates over the elements of a collection, and checks whether at least one element is true according to the Groovy Truth. |
|
public static boolean |
asBoolean(Object object) Coerce an object instance to a boolean value. |
|
public static boolean |
asBoolean(Boolean bool) Coerce a Boolean instance to a boolean value. |
|
public static boolean |
asBoolean(Collection collection) Coerce a collection instance to a boolean value. |
|
public static boolean |
asBoolean(Map map) Coerce a map instance to a boolean value. |
|
public static boolean |
asBoolean(Iterator iterator) Coerce an iterator instance to a boolean value. |
|
public static boolean |
asBoolean(Enumeration enumeration) Coerce an enumeration instance to a boolean value. |
|
public static boolean |
asBoolean(Object[] array) Coerce an Object array to a boolean value. |
|
public static boolean |
asBoolean(byte[] array) Coerces a byte array to a boolean value. |
|
public static boolean |
asBoolean(short[] array) Coerces a short array to a boolean value. |
|
public static boolean |
asBoolean(int[] array) Coerces an int array to a boolean value. |
|
public static boolean |
asBoolean(long[] array) Coerces a long array to a boolean value. |
|
public static boolean |
asBoolean(float[] array) Coerces a float array to a boolean value. |
|
public static boolean |
asBoolean(double[] array) Coerces a double array to a boolean value. |
|
public static boolean |
asBoolean(boolean[] array) Coerces a boolean array to a boolean value. |
|
public static boolean |
asBoolean(char[] array) Coerces a char array to a boolean value. |
|
public static boolean |
asBoolean(Character character) |
|
public static boolean |
asBoolean(Float object) Coerce a Float instance to a boolean value. |
|
public static boolean |
asBoolean(Double object) Coerce a Double instance to a boolean value. |
|
public static boolean |
asBoolean(Number number) Coerce a number to a boolean value. |
<T> |
public static Collection<T> |
asCollection(Iterable<T> self) Converts this Iterable to a Collection. |
<K, V> |
public static Map<K, V> |
asImmutable(Map<K, V> self) A convenience method for creating an immutable Map. |
<K, V> |
public static SortedMap<K, V> |
asImmutable(SortedMap<K, V> self) A convenience method for creating an immutable SortedMap. |
<T> |
public static List<T> |
asImmutable(List<T> self) A convenience method for creating an immutable List. |
<T> |
public static Set<T> |
asImmutable(Set<T> self) A convenience method for creating an immutable Set. |
<T> |
public static SortedSet<T> |
asImmutable(SortedSet<T> self) A convenience method for creating an immutable SortedSet. |
<T> |
public static Collection<T> |
asImmutable(Collection<T> self) A convenience method for creating an immutable Collection. |
<T> |
public static List<T> |
asList(Collection<T> self)
|
<T> |
public static List<T> |
asList(Iterable<T> self) Converts this Iterable to a List. |
|
public static String |
asString(Throwable self) Get the detail information of Throwable instance's stack trace |
<K, V> |
public static Map<K, V> |
asSynchronized(Map<K, V> self) A convenience method for creating a synchronized Map. |
<K, V> |
public static SortedMap<K, V> |
asSynchronized(SortedMap<K, V> self) A convenience method for creating a synchronized SortedMap. |
<T> |
public static Collection<T> |
asSynchronized(Collection<T> self) A convenience method for creating a synchronized Collection. |
<T> |
public static List<T> |
asSynchronized(List<T> self) A convenience method for creating a synchronized List. |
<T> |
public static Set<T> |
asSynchronized(Set<T> self) A convenience method for creating a synchronized Set. |
<T> |
public static SortedSet<T> |
asSynchronized(SortedSet<T> self) A convenience method for creating a synchronized SortedSet. |
<T> |
public static T |
asType(Iterable iterable, Class<T> clazz) Converts the given iterable to another type. |
<T> |
public static T |
asType(Collection col, Class<T> clazz) Converts the given collection to another type. |
<T> |
public static T |
asType(Object[] ary, Class<T> clazz) Converts the given array to either a List, Set, or SortedSet. |
<T> |
public static T |
asType(Closure impl, Class<T> type) Coerces the closure to an implementation of the given class. |
<T> |
public static T |
asType(Map map, Class<T> clazz) Coerces this map to the given type, using the map's keys as the public method names, and values as the implementation. |
<T> |
public static T |
asType(Number self, Class<T> c) Transform this number to a the given type, using the 'as' operator. |
<T> |
public static T |
asType(Object obj, Class<T> type) Converts a given object to a type. |
<K, V> |
public static Map<K, V> |
asUnmodifiable(Map<K, V> self) Creates an unmodifiable view of a Map. |
<K, V> |
public static SortedMap<K, V> |
asUnmodifiable(SortedMap<K, V> self) Creates an unmodifiable view of a SortedMap. |
<T> |
public static List<T> |
asUnmodifiable(List<T> self) Creates an unmodifiable view of a List. |
<T> |
public static Set<T> |
asUnmodifiable(Set<T> self) Creates an unmodifiable view of a Set. |
<T> |
public static SortedSet<T> |
asUnmodifiable(SortedSet<T> self) Creates an unmodifiable view of a SortedSet. |
<T> |
public static Collection<T> |
asUnmodifiable(Collection<T> self) Creates an unmodifiable view of a Collection. |
|
public static Object |
average(Iterable<?> self) Averages the items in an Iterable. |
|
public static Object |
average(Object[] self) Averages the items in an array. |
|
public static Object |
average(Iterator<?> self) Averages the items from an Iterator. |
|
public static BigDecimal |
average(byte[] self) Calculates the average of the bytes in the array. |
|
public static BigDecimal |
average(short[] self) Calculates the average of the shorts in the array. |
|
public static BigDecimal |
average(int[] self) Calculates the average of the ints in the array. |
|
public static BigDecimal |
average(long[] self) Calculates the average of the longs in the array. |
|
public static double |
average(float[] self) Calculates the average of the floats in the array. |
|
public static double |
average(double[] self) Calculates the average of the doubles in the array. |
<T> |
public static Object |
average(Iterable<T> self, Closure closure) Averages the result of applying a closure to each item of an Iterable. |
<T> |
public static Object |
average(T[] self, Closure closure) Averages the result of applying a closure to each item of an array. |
<T> |
public static Object |
average(Iterator<T> self, Closure closure) Averages the result of applying a closure to each item returned from an iterator. |
|
public static BitSet |
bitwiseNegate(BitSet self) Bitwise NEGATE a BitSet. |
|
public static Number |
bitwiseNegate(Number left) Bitwise NEGATE a Number. |
<T> |
public static BufferedIterator<T> |
buffered(Iterator<T> self) Returns a BufferedIterator that allows examining the next element without
consuming it.
|
<T> |
public static BufferedIterator<T> |
bufferedIterator(Iterable<T> self) Returns a BufferedIterator that allows examining the next element without
consuming it.
|
<T> |
public static BufferedIterator<T> |
bufferedIterator(List<T> self) Returns a BufferedIterator that allows examining the next element without
consuming it.
|
<T> |
protected static T |
callClosureForLine(Closure<T> closure, String line, int counter) |
<T, K, V> |
protected static T |
callClosureForMapEntry(Closure<T> closure, Map.Entry<K, V> entry) |
<T, K, V> |
protected static T |
callClosureForMapEntryAndCounter(Closure<T> closure, Map.Entry<K, V> entry, int counter) |
<T> |
public static List<List<T>> |
chop(T[] self, int chopSizes) Chops the array into pieces, returning lists with sizes corresponding to the supplied chop sizes. |
<T> |
public static List<List<T>> |
chop(Iterable<T> self, int chopSizes) Chops the Iterable into pieces, returning lists with sizes corresponding to the supplied chop sizes. |
<T> |
public static List<List<T>> |
chop(Iterator<T> self, int chopSizes) Chops the iterator items into pieces, returning lists with sizes corresponding to the supplied chop sizes. |
<T> |
public static List<List<T>> |
collate(Iterable<T> self, int size) Collates this iterable into sub-lists of length size .
|
<T> |
public static List<List<T>> |
collate(T[] self, int size) Collates an array. |
<T> |
public static List<List<T>> |
collate(List<T> self, int size)
|
<T> |
public static List<List<T>> |
collate(Iterable<T> self, int size, int step) Collates this iterable into sub-lists of length size stepping through the code step
elements for each subList.
|
<T> |
public static List<List<T>> |
collate(T[] self, int size, int step) Collates an array into sub-lists. |
<T> |
public static List<List<T>> |
collate(List<T> self, int size, int step)
|
<T> |
public static List<List<T>> |
collate(Iterable<T> self, int size, boolean keepRemainder) Collates this iterable into sub-lists of length size . |
<T> |
public static List<List<T>> |
collate(T[] self, int size, boolean keepRemainder) Collates this array into sub-lists. |
<T> |
public static List<List<T>> |
collate(List<T> self, int size, boolean keepRemainder)
|
<T> |
public static List<List<T>> |
collate(Iterable<T> self, int size, int step, boolean keepRemainder) Collates this iterable into sub-lists of length size stepping through the code step
elements for each sub-list. |
<T> |
public static List<List<T>> |
collate(T[] self, int size, int step, boolean keepRemainder) Collates this array into into sub-lists. |
<T> |
public static List<List<T>> |
collate(List<T> self, int size, int step, boolean keepRemainder)
|
|
public static Collection |
collect(Object self) Iterates through this aggregate Object transforming each item into a new value using Closure.IDENTITY as a transformer, basically returning a list of items copied from the original object. |
<T> |
public static List<T> |
collect(Object self, Closure<T> transform) Iterates through this aggregate Object transforming each item into a new value using the transform closure, returning a list of transformed values.
|
<T> |
public static Collection<T> |
collect(Object self, Collection<T> collector, Closure<? extends T> transform) Iterates through this aggregate Object transforming each item into a new value using the transform closure
and adding it to the supplied collector . |
<S, T> |
public static List<T> |
collect(S[] self, Closure<T> transform) Iterates through this Array transforming each item into a new value using the transform closure, returning a list of transformed values. |
<S, T> |
public static Collection<T> |
collect(S[] self, Collection<T> collector, Closure<? extends T> transform) Iterates through this Array transforming each item into a new value using the transform closure
and adding it to the supplied collector .
|
<S, T> |
public static List<T> |
collect(Iterator<S> self, Closure<T> transform) Iterates through this Iterator transforming each item into a new value using the transform closure, returning a list of transformed values. |
<S, T> |
public static Collection<T> |
collect(Iterator<S> self, Collection<T> collector, Closure<? extends T> transform) Iterates through this Iterator transforming each item into a new value using the transform closure
and adding it to the supplied collector . |
<T> |
public static List<T> |
collect(Collection<T> self) Iterates through this collection transforming each entry into a new value using Closure.IDENTITY as a transformer, basically returning a list of items copied from the original collection. |
<S, T> |
public static List<T> |
collect(Collection<S> self, Closure<T> transform) Iterates through this collection transforming each entry into a new value using the transform closure
returning a list of transformed values. |
<S, T> |
public static Collection<T> |
collect(Collection<S> self, Collection<T> collector, Closure<? extends T> transform) Iterates through this collection transforming each value into a new value using the transform closure
and adding it to the supplied collector .
|
<T> |
public static List<T> |
collect(Iterable<T> self) Iterates through this collection transforming each entry into a new value using Closure.IDENTITY as a transformer, basically returning a list of items copied from the original collection. |
<S, T> |
public static List<T> |
collect(Iterable<S> self, Closure<T> transform) Iterates through this Iterable transforming each entry into a new value using the transform closure
returning a list of transformed values.
|
<S, T> |
public static Collection<T> |
collect(Iterable<S> self, Collection<T> collector, Closure<? extends T> transform) Iterates through this collection transforming each value into a new value using the transform closure
and adding it to the supplied collector .
|
<T, K, V> |
public static Collection<T> |
collect(Map<K, V> self, Collection<T> collector, Closure<? extends T> transform) Iterates through this Map transforming each map entry into a new value using the transform closure
returning the collector with all transformed values added to it.
|
<T, K, V> |
public static List<T> |
collect(Map<K, V> self, Closure<T> transform) Iterates through this Map transforming each map entry into a new value using the transform closure
returning a list of transformed values.
|
|
public static List |
collectAll(Collection self, Closure transform) Deprecated alias for collectNested |
|
public static Collection |
collectAll(Collection self, Collection collector, Closure transform) Deprecated alias for collectNested |
<K, V, X, Y> |
public static Map<K, V> |
collectEntries(Map<X, Y> self, Map<K, V> collector, Closure<?> transform) Iterates through this Map transforming each map entry using the transform closure
returning a map of the transformed entries.
|
<K, V, X, Y> |
public static Map<K, V> |
collectEntries(Map<X, Y> self, Closure<?> transform) Iterates through this Map transforming each entry using the transform closure
and returning a map of the transformed entries.
|
<K, V> |
public static Map<K, V> |
collectEntries(Collection<?> self, Closure<?> transform)
|
<K, V, E> |
public static Map<K, V> |
collectEntries(Iterator<E> self, Closure<?> transform) A variant of collectEntries for Iterators. |
<K, V, E> |
public static Map<K, V> |
collectEntries(Iterable<E> self, Closure<?> transform) Iterates through this Iterable transforming each item using the transform closure
and returning a map of the resulting transformed entries.
|
<K, V> |
public static Map<K, V> |
collectEntries(Collection<?> self)
|
<K, V> |
public static Map<K, V> |
collectEntries(Iterator<?> self) A variant of collectEntries for Iterators using the identity closure as the transform. |
<K, V> |
public static Map<K, V> |
collectEntries(Iterable<?> self) A variant of collectEntries for Iterable objects using the identity closure as the transform. |
<K, V> |
public static Map<K, V> |
collectEntries(Collection<?> self, Map<K, V> collector, Closure<?> transform)
|
<K, V, E> |
public static Map<K, V> |
collectEntries(Iterator<E> self, Map<K, V> collector, Closure<?> transform) A variant of collectEntries for Iterators using a supplied map as the destination of transformed entries. |
<K, V, E> |
public static Map<K, V> |
collectEntries(Iterable<E> self, Map<K, V> collector, Closure<?> transform) Iterates through this Iterable transforming each item using the closure as a transformer into a map entry, returning the supplied map with all of the transformed entries added to it. |
<K, V> |
public static Map<K, V> |
collectEntries(Collection<?> self, Map<K, V> collector)
|
<K, V> |
public static Map<K, V> |
collectEntries(Iterator<?> self, Map<K, V> collector) A variant of collectEntries for Iterators using the identity closure as the transform and a supplied map as the destination of transformed entries. |
<K, V> |
public static Map<K, V> |
collectEntries(Iterable<?> self, Map<K, V> collector) A variant of collectEntries for Iterables using the identity closure as the transform and a supplied map as the destination of transformed entries. |
<K, V, E> |
public static Map<K, V> |
collectEntries(E[] self, Map<K, V> collector, Closure<?> transform) Iterates through this array transforming each item using the transform closure
and returning a map of the resulting transformed entries.
|
<K, V, E> |
public static Map<K, V> |
collectEntries(E[] self, Map<K, V> collector) A variant of collectEntries using the identity closure as the transform. |
<K, V, E> |
public static Map<K, V> |
collectEntries(E[] self, Closure<?> transform) Iterates through this array transforming each item using the transform closure
and returning a map of the resulting transformed entries.
|
<K, V, E> |
public static Map<K, V> |
collectEntries(E[] self) A variant of collectEntries using the identity closure as the transform. |
<T, E> |
public static List<T> |
collectMany(Collection<E> self, Closure<? extends Collection<? extends T>> projection)
|
<T, E> |
public static Collection<T> |
collectMany(Collection<E> self, Collection<T> collector, Closure<? extends Collection<? extends T>> projection)
|
<T, E> |
public static List<T> |
collectMany(Iterable<E> self, Closure<? extends Collection<? extends T>> projection) Projects each item from a source Iterable to a collection and concatenates (flattens) the resulting collections into a single list. |
<T, E> |
public static Collection<T> |
collectMany(Iterable<E> self, Collection<T> collector, Closure<? extends Collection<? extends T>> projection) Projects each item from a source collection to a result collection and concatenates (flattens) the resulting collections adding them into the collector . |
<T, K, V> |
public static Collection<T> |
collectMany(Map<K, V> self, Collection<T> collector, Closure<? extends Collection<? extends T>> projection) Projects each item from a source map to a result collection and concatenates (flattens) the resulting collections adding them into the collector . |
<T, K, V> |
public static List<T> |
collectMany(Map<K, V> self, Closure<? extends Collection<? extends T>> projection) Projects each item from a source map to a result collection and concatenates (flattens) the resulting collections adding them into a collection. |
<T, E> |
public static List<T> |
collectMany(E[] self, Closure<? extends Collection<? extends T>> projection) Projects each item from a source array to a collection and concatenates (flattens) the resulting collections into a single list. |
<T, E> |
public static Collection<T> |
collectMany(E[] self, Collection<T> collector, Closure<? extends Collection<? extends T>> projection) Projects each item from a source array to a collection and concatenates (flattens) the resulting collections into a single list. |
<T, E> |
public static Collection<T> |
collectMany(Iterator<E> self, Collection<T> collector, Closure<? extends Collection<? extends T>> projection) Projects each item from a source iterator to a collection and concatenates (flattens) the resulting collections into a single list. |
<T, E> |
public static List<T> |
collectMany(Iterator<E> self, Closure<? extends Collection<? extends T>> projection) Projects each item from a source iterator to a collection and concatenates (flattens) the resulting collections into a single list. |
<T, K, V> |
public static Collection<T> |
collectMany$$bridge(Map<K, V> self, Closure<? extends Collection<? extends T>> projection) |
|
public static List |
collectNested(Collection self, Closure transform) Recursively iterates through this collection transforming each non-Collection value into a new value using the closure as a transformer. |
|
public static List |
collectNested(Iterable self, Closure transform) Recursively iterates through this Iterable transforming each non-Collection value into a new value using the closure as a transformer. |
|
public static Collection |
collectNested(Collection self, Collection collector, Closure transform)
|
|
public static Collection |
collectNested(Iterable self, Collection collector, Closure transform) Recursively iterates through this Iterable transforming each non-Collection value into a new value using the transform closure. |
|
public static List |
combinations(Collection self)
|
|
public static List |
combinations(Iterable self) Adds GroovyCollections#combinations(Iterable) as a method on Iterables. |
|
public static List |
combinations(Iterable self, Closure<?> function) Adds GroovyCollections#combinations(Iterable, Closure) as a method on collections. |
|
public static int |
compareTo(Character left, Number right) Compare a Character and a Number. |
|
public static int |
compareTo(Number left, Character right) Compare a Number and a Character. |
|
public static int |
compareTo(Character left, Character right) Compare two Characters. |
|
public static int |
compareTo(Number left, Number right) Compare two Numbers. |
|
public static boolean |
contains(Iterable self, Object item) Returns true if this iterable contains the item. |
|
public static boolean |
contains(int[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
contains(long[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
contains(short[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
contains(char[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
contains(boolean[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
contains(double[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
contains(float[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
contains(byte[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
contains(Object[] self, Object value) Checks whether the array contains the given value. |
|
public static boolean |
containsAll(Iterable self, Object[] items) Returns true if this iterable contains all of the elements in the specified array. |
|
public static boolean |
containsAll(Collection self, Object[] items)
|
|
public static Number |
count(Iterator self, Object value) Counts the number of occurrences of the given value from the items within this Iterator. |
<T> |
public static Number |
count(Iterator<T> self, Closure closure) Counts the number of occurrences which satisfy the given closure from the items within this Iterator. |
|
public static Number |
count(Collection self, Object value)
|
|
public static Number |
count(Iterable self, Object value) Counts the number of occurrences of the given value inside this Iterable. |
|
public static Number |
count(Collection self, Closure closure)
|
<T> |
public static Number |
count(Iterable<T> self, Closure closure) Counts the number of occurrences which satisfy the given closure from inside this Iterable. |
<K, V> |
public static Number |
count(Map<K, V> self, Closure<?> closure) Counts the number of occurrences which satisfy the given closure from inside this map. |
|
public static Number |
count(Object[] self, Object value) Counts the number of occurrences of the given value inside this array. |
<T> |
public static Number |
count(T[] self, Closure closure) Counts the number of occurrences which satisfy the given closure from inside this array. |
|
public static Number |
count(int[] self, Object value) Counts the number of occurrences of the given value inside this array. |
|
public static Number |
count(long[] self, Object value) Counts the number of occurrences of the given value inside this array. |
|
public static Number |
count(short[] self, Object value) Counts the number of occurrences of the given value inside this array. |
|
public static Number |
count(char[] self, Object value) Counts the number of occurrences of the given value inside this array. |
|
public static Number |
count(boolean[] self, Object value) Counts the number of occurrences of the given value inside this array. |
|
public static Number |
count(double[] self, Object value) Counts the number of occurrences of the given value inside this array. |
|
public static Number |
count(float[] self, Object value) Counts the number of occurrences of the given value inside this array. |
|
public static Number |
count(byte[] self, Object value) Counts the number of occurrences of the given value inside this array. |
<K> |
public static Map<K, Integer> |
countBy(Collection self, Closure<K> closure)
|
<K, E> |
public static Map<K, Integer> |
countBy(Iterable<E> self, Closure<K> closure) Sorts all collection members into groups determined by the supplied mapping closure and counts the group size. |
<K, E> |
public static Map<K, Integer> |
countBy(E[] self, Closure<K> closure) Sorts all array members into groups determined by the supplied mapping closure and counts the group size. |
<K, E> |
public static Map<K, Integer> |
countBy(Iterator<E> self, Closure<K> closure) Sorts all iterator items into groups determined by the supplied mapping closure and counts the group size. |
<K, U, V> |
public static Map<K, Integer> |
countBy(Map<U, V> self, Closure<K> closure) Groups the members of a map into groups determined by the supplied mapping closure and counts the frequency of the created groups. |
|
public static boolean |
disjoint(Iterable left, Iterable right) Returns true if the intersection of two iterables is empty.
|
|
public static boolean |
disjoint(Collection left, Collection right)
|
|
public static Number |
div(Character left, Number right) Divide a Character by a Number. |
|
public static Number |
div(Number left, Character right) Divide a Number by a Character. |
|
public static Number |
div(Character left, Character right) Divide one Character by another. |
|
public static void |
downto(Number self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
|
public static void |
downto(long self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
|
public static void |
downto(Long self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
|
public static void |
downto(float self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
|
public static void |
downto(Float self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
|
public static void |
downto(double self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
|
public static void |
downto(Double self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
|
public static void |
downto(BigInteger self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
|
public static void |
downto(BigDecimal self, Number to, Closure closure) Iterates from this number down to the given number, inclusive, decrementing by one each time. |
<T> |
public static SortedSet<T> |
drop(SortedSet<T> self, int num) Drops the given number of elements from the head of this List. |
<T> |
public static List<T> |
drop(List<T> self, int num) Drops the given number of elements from the head of this List. |
<T> |
public static Collection<T> |
drop(Iterable<T> self, int num) Drops the given number of elements from the head of this Iterable. |
<T> |
public static T[] |
drop(T[] self, int num) Drops the given number of elements from the head of this array if they are available. |
<K, V> |
public static Map<K, V> |
drop(Map<K, V> self, int num) Drops the given number of key/value pairs from the head of this map if they are available. |
<T> |
public static Iterator<T> |
drop(Iterator<T> self, int num) Drops the given number of elements from the head of this iterator if they are available. |
<T> |
public static SortedSet<T> |
dropRight(SortedSet<T> self, int num) Drops the given number of elements from the tail of this SortedSet. |
<T> |
public static List<T> |
dropRight(List<T> self, int num) Drops the given number of elements from the tail of this List. |
<T> |
public static Collection<T> |
dropRight(Iterable<T> self, int num) Drops the given number of elements from the tail of this Iterable. |
<T> |
public static Iterator<T> |
dropRight(Iterator<T> self, int num) Drops the given number of elements from the tail of this Iterator. |
<T> |
public static T[] |
dropRight(T[] self, int num) Drops the given number of elements from the tail of this array if they are available. |
<T> |
public static SortedSet<T> |
dropWhile(SortedSet<T> self, Closure condition) Returns a suffix of this SortedSet where elements are dropped from the front while the given Closure evaluates to true. |
<T> |
public static List<T> |
dropWhile(List<T> self, Closure condition) Returns a suffix of this List where elements are dropped from the front while the given Closure evaluates to true. |
<T> |
public static Collection<T> |
dropWhile(Iterable<T> self, Closure condition) Returns a suffix of this Iterable where elements are dropped from the front while the given closure evaluates to true. |
<K, V> |
public static Map<K, V> |
dropWhile(Map<K, V> self, Closure condition) Create a suffix of the given Map by dropping as many entries as possible from the front of the original Map such that calling the given closure condition evaluates to true when passed each of the dropped entries (or key/value pairs). |
<T> |
public static T[] |
dropWhile(T[] self, Closure<?> condition) Create a suffix of the given array by dropping as many elements as possible from the front of the original array such that calling the given closure condition evaluates to true when passed each of the dropped elements. |
<T> |
public static Iterator<T> |
dropWhile(Iterator<T> self, Closure<?> condition) Creates an Iterator that returns a suffix of the elements from an original Iterator. |
|
public static String |
dump(Object self) Generates a detailed dump string of an object showing its class, hashCode and fields. |
<T> |
public static T[] |
each(T[] self, Closure closure) Iterates through an array passing each array entry to the given closure. |
<T> |
public static T |
each(T self, Closure closure) Iterates through an aggregate type or data structure, passing each item to the given closure. |
<T> |
public static Iterable<T> |
each(Iterable<T> self, Closure closure) Iterates through an Iterable, passing each item to the given closure. |
<T> |
public static Iterator<T> |
each(Iterator<T> self, Closure closure) Iterates through an Iterator, passing each item to the given closure. |
<T> |
public static Collection<T> |
each(Collection<T> self, Closure closure) Iterates through a Collection, passing each item to the given closure. |
<T> |
public static List<T> |
each(List<T> self, Closure closure) Iterates through a List, passing each item to the given closure. |
<T> |
public static Set<T> |
each(Set<T> self, Closure closure) Iterates through a Set, passing each item to the given closure. |
<T> |
public static SortedSet<T> |
each(SortedSet<T> self, Closure closure) Iterates through a SortedSet, passing each item to the given closure. |
<K, V> |
public static Map<K, V> |
each(Map<K, V> self, Closure closure) Allows a Map to be iterated through using a closure. |
|
public static void |
eachByte(Byte[] self, Closure closure) Traverse through each byte of this Byte array. |
|
public static void |
eachByte(byte[] self, Closure closure) Traverse through each byte of this byte array. |
|
public static void |
eachCombination(Iterable self, Closure<?> function) Applies a function on each combination of the input lists. |
<T> |
public static Iterator<List<T>> |
eachPermutation(Collection<T> self, Closure closure)
|
<T> |
public static Iterator<List<T>> |
eachPermutation(Iterable<T> self, Closure closure) Iterates over all permutations of a collection, running a closure for each iteration. |
<T> |
public static T[] |
eachWithIndex(T[] self, Closure closure) Iterates through an array, passing each array element and the element's index (a counter starting at zero) to the given closure. |
<T> |
public static T |
eachWithIndex(T self, Closure closure) Iterates through an aggregate type or data structure, passing each item and the item's index (a counter starting at zero) to the given closure. |
<T> |
public static Iterable<T> |
eachWithIndex(Iterable<T> self, Closure closure) Iterates through an iterable type, passing each item and the item's index (a counter starting at zero) to the given closure. |
<T> |
public static Iterator<T> |
eachWithIndex(Iterator<T> self, Closure closure) Iterates through an iterator type, passing each item and the item's index (a counter starting at zero) to the given closure. |
<T> |
public static Collection<T> |
eachWithIndex(Collection<T> self, Closure closure) Iterates through a Collection, passing each item and the item's index (a counter starting at zero) to the given closure. |
<T> |
public static List<T> |
eachWithIndex(List<T> self, Closure closure) Iterates through a List, passing each item and the item's index (a counter starting at zero) to the given closure. |
<T> |
public static Set<T> |
eachWithIndex(Set<T> self, Closure closure) Iterates through a Set, passing each item and the item's index (a counter starting at zero) to the given closure. |
<T> |
public static SortedSet<T> |
eachWithIndex(SortedSet<T> self, Closure closure) Iterates through a SortedSet, passing each item and the item's index (a counter starting at zero) to the given closure. |
<K, V> |
public static Map<K, V> |
eachWithIndex(Map<K, V> self, Closure closure) Allows a Map to be iterated through using a closure. |
|
public static boolean |
equals(int[] left, int[] right) Compare the contents of this array to the contents of the given array. |
|
public static boolean |
equals(Object[] left, List right) Determines if the contents of this array are equal to the contents of the given list, in the same order. |
|
public static boolean |
equals(List left, Object[] right) Determines if the contents of this list are equal to the contents of the given array in the same order. |
|
public static boolean |
equals(List left, List right) Compare the contents of two Lists. |
<T> |
public static boolean |
equals(Set<T> self, Set<T> other) Compare the contents of two Sets for equality using Groovy's coercion rules. |
|
public static boolean |
equals(Map self, Map other) Compares two Maps treating coerced numerical values as identical. |
|
public static boolean |
equalsIgnoreZeroSign(Float number, Object other) Compares this object against the specified object returning the same result as Float.equals but returning true if this object and the specified object are both zero and negative zero respectively or vice versa. |
|
public static boolean |
equalsIgnoreZeroSign(Double number, Object other) Compares this object against the specified object returning the same result as Double.equals but returning true if this object and the specified object are both zero and negative zero respectively or vice versa. |
|
public static boolean |
every(Object self, Closure predicate) Used to determine if the given predicate closure is valid (i.e. returns true for all items in this data structure).
|
<T> |
public static boolean |
every(Iterator<T> self, Closure predicate) Used to determine if the given predicate closure is valid (i.e. returns true for all items in this iterator).
|
<T> |
public static boolean |
every(T[] self, Closure predicate) Used to determine if the given predicate closure is valid (i.e. returns true for all items in this Array). |
<T> |
public static boolean |
every(Iterable<T> self, Closure predicate) Used to determine if the given predicate closure is valid (i.e. returns true for all items in this iterable).
|
<K, V> |
public static boolean |
every(Map<K, V> self, Closure predicate) Iterates over the entries of a map, and checks whether a predicate is valid for all entries. |
|
public static boolean |
every(Object self) Iterates over every element of a collection, and checks whether all elements are true according to the Groovy Truth.
|
|
public static Object |
find(Object self, Closure closure) Finds the first value matching the closure condition. |
|
public static Object |
find(Object self) Finds the first item matching the IDENTITY Closure (i.e. matching Groovy truth). |
<T> |
public static T |
find(Collection<T> self, Closure closure) Finds the first value matching the closure condition. |
<T> |
public static T |
find(T[] self, Closure condition) Finds the first element in the array that matches the given closure condition. |
<T> |
public static T |
find(Collection<T> self) Finds the first item matching the IDENTITY Closure (i.e. matching Groovy truth). |
<K, V> |
public static Map.Entry<K, V> |
find(Map<K, V> self, Closure<?> closure) Finds the first entry matching the closure condition. |
<T> |
public static Set<T> |
findAll(Set<T> self, Closure closure) Finds all values matching the closure condition. |
<T> |
public static List<T> |
findAll(List<T> self, Closure closure) Finds all values matching the closure condition. |
<T> |
public static Collection<T> |
findAll(Collection<T> self, Closure closure) Finds all values matching the closure condition. |
<T> |
public static Collection<T> |
findAll(T[] self, Closure condition) Finds all elements of the array matching the given Closure condition. |
<T> |
public static Set<T> |
findAll(Set<T> self) Finds the items matching the IDENTITY Closure (i.e. matching Groovy truth). |
<T> |
public static List<T> |
findAll(List<T> self) Finds the items matching the IDENTITY Closure (i.e. matching Groovy truth). |
<T> |
public static Collection<T> |
findAll(Collection<T> self) Finds the items matching the IDENTITY Closure (i.e. matching Groovy truth). |
<T> |
public static Collection<T> |
findAll(T[] self) Finds the elements of the array matching the IDENTITY Closure (i.e. matching Groovy truth). |
|
public static Collection |
findAll(Object self, Closure closure) Finds all items matching the closure condition. |
|
public static Collection |
findAll(Object self) Finds all items matching the IDENTITY Closure (i.e. matching Groovy truth). |
<K, V> |
public static Map<K, V> |
findAll(Map<K, V> self, Closure closure) Finds all entries matching the closure condition. |
|
public static int |
findIndexOf(Object self, Closure condition) Iterates over the elements of an aggregate of items and returns the index of the first item that matches the condition specified in the closure. |
|
public static int |
findIndexOf(Object self, int startIndex, Closure condition) Iterates over the elements of an aggregate of items, starting from a specified startIndex, and returns the index of the first item that matches the condition specified in the closure. |
<T> |
public static int |
findIndexOf(Iterator<T> self, Closure condition) Iterates over the elements of an Iterator and returns the index of the first item that satisfies the condition specified by the closure. |
<T> |
public static int |
findIndexOf(Iterator<T> self, int startIndex, Closure condition) Iterates over the elements of an Iterator, starting from a specified startIndex, and returns the index of the first item that satisfies the condition specified by the closure. |
<T> |
public static int |
findIndexOf(Iterable<T> self, Closure condition) Iterates over the elements of an Iterable and returns the index of the first item that satisfies the condition specified by the closure. |
<T> |
public static int |
findIndexOf(Iterable<T> self, int startIndex, Closure condition) Iterates over the elements of an Iterable, starting from a specified startIndex, and returns the index of the first item that satisfies the condition specified by the closure. |
<T> |
public static int |
findIndexOf(T[] self, Closure condition) Iterates over the elements of an Array and returns the index of the first item that satisfies the condition specified by the closure. |
<T> |
public static int |
findIndexOf(T[] self, int startIndex, Closure condition) Iterates over the elements of an Array, starting from a specified startIndex, and returns the index of the first item that satisfies the condition specified by the closure. |
|
public static List<Number> |
findIndexValues(Object self, Closure condition) Iterates over the elements of an aggregate of items and returns the index values of the items that match the condition specified in the closure. |
|
public static List<Number> |
findIndexValues(Object self, Number startIndex, Closure condition) Iterates over the elements of an aggregate of items, starting from a specified startIndex, and returns the index values of the items that match the condition specified in the closure. |
<T> |
public static List<Number> |
findIndexValues(Iterator<T> self, Closure condition) Iterates over the elements of an Iterator and returns the index values of the items that match the condition specified in the closure. |
<T> |
public static List<Number> |
findIndexValues(Iterator<T> self, Number startIndex, Closure condition) Iterates over the elements of an Iterator, starting from a specified startIndex, and returns the index values of the items that match the condition specified in the closure. |
<T> |
public static List<Number> |
findIndexValues(Iterable<T> self, Closure condition) Iterates over the elements of an Iterable and returns the index values of the items that match the condition specified in the closure. |
<T> |
public static List<Number> |
findIndexValues(Iterable<T> self, Number startIndex, Closure condition) Iterates over the elements of an Iterable, starting from a specified startIndex, and returns the index values of the items that match the condition specified in the closure. |
<T> |
public static List<Number> |
findIndexValues(T[] self, Closure condition) Iterates over the elements of an Array and returns the index values of the items that match the condition specified in the closure. |
<T> |
public static List<Number> |
findIndexValues(T[] self, Number startIndex, Closure condition) Iterates over the elements of an Array, starting from a specified startIndex, and returns the index values of the items that match the condition specified in the closure. |
|
public static int |
findLastIndexOf(Object self, Closure condition) Iterates over the elements of an aggregate of items and returns the index of the last item that matches the condition specified in the closure. |
|
public static int |
findLastIndexOf(Object self, int startIndex, Closure condition) Iterates over the elements of an aggregate of items, starting from a specified startIndex, and returns the index of the last item that matches the condition specified in the closure. |
<T> |
public static int |
findLastIndexOf(Iterator<T> self, Closure condition) Iterates over the elements of an Iterator and returns the index of the last item that matches the condition specified in the closure. |
<T> |
public static int |
findLastIndexOf(Iterator<T> self, int startIndex, Closure condition) Iterates over the elements of an Iterator, starting from a specified startIndex, and returns the index of the last item that matches the condition specified in the closure. |
<T> |
public static int |
findLastIndexOf(Iterable<T> self, Closure condition) Iterates over the elements of an Iterable and returns the index of the last item that matches the condition specified in the closure. |
<T> |
public static int |
findLastIndexOf(Iterable<T> self, int startIndex, Closure condition) Iterates over the elements of an Iterable, starting from a specified startIndex, and returns the index of the last item that matches the condition specified in the closure. |
<T> |
public static int |
findLastIndexOf(T[] self, Closure condition) Iterates over the elements of an Array and returns the index of the last item that matches the condition specified in the closure. |
<T> |
public static int |
findLastIndexOf(T[] self, int startIndex, Closure condition) Iterates over the elements of an Array, starting from a specified startIndex, and returns the index of the last item that matches the condition specified in the closure. |
|
public static Object |
findResult(Object self, Closure condition) Treats the object as iterable, iterating through the values it represents and returns the first non-null result obtained from calling the closure, otherwise returns null. |
|
public static Object |
findResult(Object self, Object defaultResult, Closure condition) Treats the object as iterable, iterating through the values it represents and returns the first non-null result obtained from calling the closure, otherwise returns the defaultResult. |
<S, T, U extends T, V extends T> |
public static T |
findResult(Collection<S> self, U defaultResult, Closure<V> condition) Iterates through the collection calling the given closure for each item but stopping once the first non-null result is found and returning that result. |
<S, T> |
public static T |
findResult(Collection<S> self, Closure<T> condition) Iterates through the collection calling the given closure for each item but stopping once the first non-null result is found and returning that result. |
<S, T, U extends T, V extends T> |
public static T |
findResult(Iterator<S> self, U defaultResult, Closure<V> condition) Iterates through the Iterator calling the given closure condition for each item but stopping once the first non-null result is found and returning that result. |
<T, U> |
public static T |
findResult(Iterator<U> self, Closure<T> condition) Iterates through the Iterator calling the given closure condition for each item but stopping once the first non-null result is found and returning that result. |
<S, T, U extends T, V extends T> |
public static T |
findResult(Iterable<S> self, U defaultResult, Closure<V> condition) Iterates through the Iterable calling the given closure condition for each item but stopping once the first non-null result is found and returning that result. |
<T, U> |
public static T |
findResult(Iterable<U> self, Closure<T> condition) Iterates through the Iterable calling the given closure condition for each item but stopping once the first non-null result is found and returning that result. |
<S, T, U extends T, V extends T> |
public static T |
findResult(S[] self, U defaultResult, Closure<V> condition) Iterates through the Array calling the given closure condition for each item but stopping once the first non-null result is found and returning that result. |
<S, T> |
public static T |
findResult(S[] self, Closure<T> condition) Iterates through the Array calling the given closure condition for each item but stopping once the first non-null result is found and returning that result. |
<T, K, V> |
public static T |
findResult(Map<K, V> self, Closure<T> condition) Returns the first non-null closure result found by passing each map entry to the closure, otherwise null is returned. |
<T, U extends T, V extends T, A, B> |
public static T |
findResult(Map<A, B> self, U defaultResult, Closure<V> condition) Returns the first non-null closure result found by passing each map entry to the closure, otherwise the defaultResult is returned. |
<T, U> |
public static Collection<T> |
findResults(Collection<U> self, Closure<T> filteringTransform)
|
<T, U> |
public static Collection<T> |
findResults(Iterable<U> self, Closure<T> filteringTransform) Iterates through the Iterable transforming items using the supplied closure and collecting any non-null results. |
<T, U> |
public static Collection<T> |
findResults(Iterator<U> self, Closure<T> filteringTransform) Iterates through the Iterator transforming items using the supplied closure and collecting any non-null results. |
<T, U> |
public static Collection<T> |
findResults(U[] self, Closure<T> filteringTransform) Iterates through the Array transforming items using the supplied closure and collecting any non-null results. |
<T, K, V> |
public static Collection<T> |
findResults(Map<K, V> self, Closure<T> filteringTransform) Iterates through the map transforming items using the supplied closure and collecting any non-null results. |
<T> |
public static T |
first(List<T> self) Returns the first item from the List. |
<T> |
public static T |
first(Iterable<T> self) Returns the first item from the Iterable. |
<T> |
public static T |
first(T[] self) Returns the first item from the array. |
|
public static Collection<?> |
flatten(Collection<?> self) Flatten a Collection. |
|
public static Collection<?> |
flatten(Iterable<?> self) Flatten an Iterable. |
|
public static List<?> |
flatten(List<?> self) Flatten a List. |
|
public static Set<?> |
flatten(Set<?> self) Flatten a Set. |
|
public static SortedSet<?> |
flatten(SortedSet<?> self) Flatten a SortedSet. |
|
public static Collection |
flatten(Object[] self) Flatten an array. |
|
public static Collection |
flatten(boolean[] self) Flatten an array. |
|
public static Collection |
flatten(byte[] self) Flatten an array. |
|
public static Collection |
flatten(char[] self) Flatten an array. |
|
public static Collection |
flatten(short[] self) Flatten an array. |
|
public static Collection |
flatten(int[] self) Flatten an array. |
|
public static Collection |
flatten(long[] self) Flatten an array. |
|
public static Collection |
flatten(float[] self) Flatten an array. |
|
public static Collection |
flatten(double[] self) Flatten an array. |
<T> |
public static Collection<T> |
flatten(Collection<T> self, Closure<? extends T> flattenUsing)
|
<T> |
public static Collection<T> |
flatten(Iterable<T> self, Closure<? extends T> flattenUsing) Flatten an Iterable. |
<K, V> |
public static V |
get(Map<K, V> map, K key, V defaultValue) Looks up an item in a Map for the given key and returns the value - unless there is no entry for the given key in which case add the default value to the map and return that. |
|
public static Object |
getAt(Object self, String property) Allows the subscript operator to be used to lookup dynamic property values. |
<T> |
public static List<T> |
getAt(List<T> self, Range range) Support the range subscript operator for a List. |
<T> |
public static List<T> |
getAt(ListWithDefault<T> self, Collection indices) Select a List of items from an eager or lazy List using a Collection to identify the indices to be selected. |
<T> |
public static List<T> |
getAt(ListWithDefault<T> self, Range range) Support the range subscript operator for an eager or lazy List. |
<T> |
public static List<T> |
getAt(ListWithDefault<T> self, EmptyRange range) Support the range subscript operator for an eager or lazy List. |
<T> |
public static List<T> |
getAt(List<T> self, EmptyRange range) Support the range subscript operator for a List. |
<T> |
public static List<T> |
getAt(List<T> self, Collection indices) Select a List of items from a List using a Collection to identify the indices to be selected. |
<T> |
public static List<T> |
getAt(T[] self, Collection indices) Select a List of items from an array using a Collection to identify the indices to be selected. |
<T> |
public static List<T> |
getAt(T[] array, Range range) Support the range subscript operator for an Array |
<T> |
public static List<T> |
getAt(T[] array, IntRange range)
|
<T> |
public static List<T> |
getAt(T[] array, EmptyRange range)
|
<T> |
public static List<T> |
getAt(T[] array, ObjectRange range)
|
<T> |
public static T |
getAt(List<T> self, int idx) Support the subscript operator for a List. |
<T> |
public static T |
getAt(List<T> self, Number idx) Support subscript operator for list access. |
<T> |
public static T |
getAt(Iterator<T> self, int idx) Support the subscript operator for an Iterator. |
<T> |
public static T |
getAt(Iterable<T> self, int idx) Support the subscript operator for an Iterable. |
<K, V> |
public static V |
getAt(Map<K, V> self, Object key) Support the subscript operator for a Map. |
|
public static List |
getAt(Collection coll, String property) Support the subscript operator for Collection. |
|
public static List<Byte> |
getAt(byte[] array, Range range) Support the subscript operator with a range for a byte array |
|
public static List<Character> |
getAt(char[] array, Range range) Support the subscript operator with a range for a char array |
|
public static List<Short> |
getAt(short[] array, Range range) Support the subscript operator with a range for a short array |
|
public static List<Integer> |
getAt(int[] array, Range range) Support the subscript operator with a range for an int array |
|
public static List<Long> |
getAt(long[] array, Range range) Support the subscript operator with a range for a long array |
|
public static List<Float> |
getAt(float[] array, Range range) Support the subscript operator with a range for a float array |
|
public static List<Double> |
getAt(double[] array, Range range) Support the subscript operator with a range for a double array |
|
public static List<Boolean> |
getAt(boolean[] array, Range range) Support the subscript operator with a range for a boolean array |
|
public static List<Byte> |
getAt(byte[] array, IntRange range) Support the subscript operator with an IntRange for a byte array |
|
public static List<Character> |
getAt(char[] array, IntRange range) Support the subscript operator with an IntRange for a char array |
|
public static List<Short> |
getAt(short[] array, IntRange range) Support the subscript operator with an IntRange for a short array |
|
public static List<Integer> |
getAt(int[] array, IntRange range) Support the subscript operator with an IntRange for an int array |
|
public static List<Long> |
getAt(long[] array, IntRange range) Support the subscript operator with an IntRange for a long array |
|
public static List<Float> |
getAt(float[] array, IntRange range) Support the subscript operator with an IntRange for a float array |
|
public static List<Double> |
getAt(double[] array, IntRange range) Support the subscript operator with an IntRange for a double array |
|
public static List<Boolean> |
getAt(boolean[] array, IntRange range) Support the subscript operator with an IntRange for a boolean array |
|
public static List<Byte> |
getAt(byte[] array, ObjectRange range) Support the subscript operator with an ObjectRange for a byte array |
|
public static List<Character> |
getAt(char[] array, ObjectRange range) Support the subscript operator with an ObjectRange for a char array |
|
public static List<Short> |
getAt(short[] array, ObjectRange range) Support the subscript operator with an ObjectRange for a short array |
|
public static List<Integer> |
getAt(int[] array, ObjectRange range) Support the subscript operator with an ObjectRange for an int array |
|
public static List<Long> |
getAt(long[] array, ObjectRange range) Support the subscript operator with an ObjectRange for a long array |
|
public static List<Float> |
getAt(float[] array, ObjectRange range) Support the subscript operator with an ObjectRange for a float array |
|
public static List<Double> |
getAt(double[] array, ObjectRange range) Support the subscript operator with an ObjectRange for a double array |
|
public static List<Boolean> |
getAt(boolean[] array, ObjectRange range) Support the subscript operator with an ObjectRange for a byte array |
|
public static List<Byte> |
getAt(byte[] array, Collection indices) Support the subscript operator with a collection for a byte array |
|
public static List<Character> |
getAt(char[] array, Collection indices) Support the subscript operator with a collection for a char array |
|
public static List<Short> |
getAt(short[] array, Collection indices) Support the subscript operator with a collection for a short array |
|
public static List<Integer> |
getAt(int[] array, Collection indices) Support the subscript operator with a collection for an int array |
|
public static List<Long> |
getAt(long[] array, Collection indices) Support the subscript operator with a collection for a long array |
|
public static List<Float> |
getAt(float[] array, Collection indices) Support the subscript operator with a collection for a float array |
|
public static List<Double> |
getAt(double[] array, Collection indices) Support the subscript operator with a collection for a double array |
|
public static List<Boolean> |
getAt(boolean[] array, Collection indices) Support the subscript operator with a collection for a boolean array |
|
public static boolean |
getAt(BitSet self, int index) Support the subscript operator for a Bitset |
|
public static BitSet |
getAt(BitSet self, IntRange range) Support retrieving a subset of a BitSet using a Range |
|
public static Groovydoc |
getGroovydoc(AnnotatedElement holder) Get runtime groovydoc |
|
public static IntRange |
getIndices(Collection self) Returns indices of the collection. |
<T> |
public static IntRange |
getIndices(T[] self) Returns indices of the array. |
|
public static IntRange |
getIndices(boolean[] self) Returns indices of the boolean array. |
|
public static IntRange |
getIndices(byte[] self) Returns indices of the byte array. |
|
public static IntRange |
getIndices(char[] self) Returns indices of the char array. |
|
public static IntRange |
getIndices(double[] self) Returns indices of the double array. |
|
public static IntRange |
getIndices(float[] self) Returns indices of the float array. |
|
public static IntRange |
getIndices(int[] self) Returns indices of the int array. |
|
public static IntRange |
getIndices(long[] self) Returns indices of the long array. |
|
public static IntRange |
getIndices(short[] self) Returns indices of the short array. |
|
public static URL |
getLocation(Class self) Gets the url of the jar file/source file containing the specified class |
|
public static MetaClass |
getMetaClass(Class c) Adds a "metaClass" property to all class objects so you can use the syntax String.metaClass.myMethod = { println "foo" } |
|
public static MetaClass |
getMetaClass(Object obj) Obtains a MetaClass for an object either from the registry or in the case of a GroovyObject from the object itself. |
|
public static MetaClass |
getMetaClass(GroovyObject obj) Obtains a MetaClass for an object either from the registry or in the case of a GroovyObject from the object itself. |
|
public static List<PropertyValue> |
getMetaPropertyValues(Object self) Retrieves the list of MetaProperty objects for 'self' and wraps it in a list of PropertyValue objects that additionally provide the value for each property of 'self'. |
|
public static Map |
getProperties(Object self) Convenience method that calls getMetaPropertyValues(java.lang.Object)(self) and provides the data in form of simple key/value pairs, i.e. without type() information. |
|
public static ClassLoader |
getRootLoader(ClassLoader self) Iterates through the classloader parents until it finds a loader with a class named "org.codehaus.groovy.tools.RootLoader". |
|
protected static List |
getSubList(List self, List splice) |
|
public static Collection |
grep(Object self, Object filter) Iterates over the collection of items which this Object represents and returns each item that matches the given filter - calling the isCase(java.lang.Object, java.lang.Object)
method used by switch statements. |
<T> |
public static Collection<T> |
grep(Collection<T> self, Object filter) Iterates over the collection of items and returns each item that matches the given filter - calling the isCase(java.lang.Object, java.lang.Object)
method used by switch statements. method can be used with different
kinds of filters like regular expressions, classes, ranges etc.
|
<T> |
public static List<T> |
grep(List<T> self, Object filter) Iterates over the collection of items and returns each item that matches the given filter - calling the isCase(java.lang.Object, java.lang.Object)
method used by switch statements. |
<T> |
public static Set<T> |
grep(Set<T> self, Object filter) Iterates over the collection of items and returns each item that matches the given filter - calling the isCase(java.lang.Object, java.lang.Object)
method used by switch statements. |
<T> |
public static Collection<T> |
grep(T[] self, Object filter) Iterates over the array of items and returns a collection of items that match the given filter - calling the isCase(java.lang.Object, java.lang.Object)
method used by switch statements. |
|
public static Collection |
grep(Object self) Iterates over the collection of items which this Object represents and returns each item that matches using the IDENTITY Closure as a filter - effectively returning all elements which satisfy Groovy truth. |
<T> |
public static Collection<T> |
grep(Collection<T> self) Iterates over the collection returning each element that matches using the IDENTITY Closure as a filter - effectively returning all elements which satisfy Groovy truth. |
<T> |
public static List<T> |
grep(List<T> self) Iterates over the collection returning each element that matches using the IDENTITY Closure as a filter - effectively returning all elements which satisfy Groovy truth. |
<T> |
public static Set<T> |
grep(Set<T> self) Iterates over the collection returning each element that matches using the IDENTITY Closure as a filter - effectively returning all elements which satisfy Groovy truth. |
<T> |
public static Collection<T> |
grep(T[] self) Iterates over the array returning each element that matches using the IDENTITY Closure as a filter - effectively returning all elements which satisfy Groovy truth. |
<K, T> |
protected static void |
groupAnswer(Map<K, List<T>> answer, T element, K value) Groups the current element according to the value |
<K, T> |
public static Map<K, List<T>> |
groupBy(Collection<T> self, Closure<K> closure)
|
<K, T> |
public static Map<K, List<T>> |
groupBy(Iterable<T> self, Closure<K> closure) Sorts all Iterable members into groups determined by the supplied mapping closure. |
<K, T> |
public static Map<K, List<T>> |
groupBy(T[] self, Closure<K> closure) Sorts all array members into groups determined by the supplied mapping closure. |
|
public static Map |
groupBy(Collection self, Object closures)
|
|
public static Map |
groupBy(Iterable self, Object closures) Sorts all Iterable members into (sub)groups determined by the supplied mapping closures. |
|
public static Map |
groupBy(Object[] self, Object closures) Sorts all array members into (sub)groups determined by the supplied mapping closures as per the Iterable variant of this method. |
|
public static Map |
groupBy(Collection self, List<Closure> closures)
|
|
public static Map |
groupBy(Iterable self, List<Closure> closures) Sorts all Iterable members into (sub)groups determined by the supplied mapping closures. |
|
public static Map |
groupBy(Object[] self, List<Closure> closures) Sorts all array members into (sub)groups determined by the supplied mapping closures as per the list variant of this method. |
<G, K, V> |
public static Map<G, Map<K, V>> |
groupBy(Map<K, V> self, Closure<G> closure) Groups the members of a map into sub maps determined by the supplied mapping closure. |
|
public static Map<Object, Map> |
groupBy(Map self, Object closures) Groups the members of a map into sub maps determined by the supplied mapping closures. |
|
public static Map<Object, Map> |
groupBy(Map self, List<Closure> closures) Groups the members of a map into sub maps determined by the supplied mapping closures. |
<G, K, V> |
public static Map<G, List<Map.Entry<K, V>>> |
groupEntriesBy(Map<K, V> self, Closure<G> closure) Groups all map entries into groups determined by the supplied mapping closure. |
|
public boolean |
hasNext() |
|
public static MetaProperty |
hasProperty(Object self, String name) |
<T> |
public static T |
head(Iterable<T> self) Returns the first item from the Iterable. |
<T> |
public static T |
head(List<T> self) Returns the first item from the List. |
<T> |
public static T |
head(T[] self) Returns the first item from the Object array. |
<T, U> |
public static T |
identity(U self, Closure<T> closure) Allows the closure to be called for the object reference self. |
|
public static Boolean |
implies(Boolean left, Boolean right) Logical implication of two boolean operators |
<E> |
public static Map<Integer, E> |
indexed(Iterable<E> self) Zips an Iterable with indices in (index, value) order. |
<E> |
public static Map<Integer, E> |
indexed(Iterable<E> self, int offset) Zips an Iterable with indices in (index, value) order. |
|
public static Map<Integer, Integer> |
indexed(int[] self) Zips an int[] with indices in (index, value) order starting from index 0. |
|
public static Map<Integer, Integer> |
indexed(int[] self, int offset) Zips an int[] with indices in (index, value) order. |
|
public static Map<Integer, Long> |
indexed(long[] self) Zips a long[] with indices in (index, value) order starting from index 0. |
|
public static Map<Integer, Long> |
indexed(long[] self, int offset) Zips a long[] with indices in (index, value) order. |
|
public static Map<Integer, Double> |
indexed(double[] self) Zips a double[] with indices in (index, value) order starting from index 0. |
|
public static Map<Integer, Double> |
indexed(double[] self, int offset) Zips a double[] with indices in (index, value) order. |
<E> |
public static Iterator<Tuple2<Integer, E>> |
indexed(Iterator<E> self) Zips an iterator with indices in (index, value) order. |
<E> |
public static Iterator<Tuple2<Integer, E>> |
indexed(Iterator<E> self, int offset) Zips an iterator with indices in (index, value) order. |
<T> |
public static Collection<T> |
init(Iterable<T> self) Returns the items from the Iterable excluding the last item. |
<T> |
public static List<T> |
init(List<T> self) Returns the items from the List excluding the last item. |
<T> |
public static SortedSet<T> |
init(SortedSet<T> self) Returns the items from the SortedSet excluding the last item. |
<T> |
public static Iterator<T> |
init(Iterator<T> self) Returns an Iterator containing all of the items from this iterator except the last one. |
<T> |
public static T[] |
init(T[] self) Returns the items from the Object array excluding the last item. |
<T> |
public static List<List<T>> |
inits(Iterable<T> self) Calculates the init values of this Iterable: the first value will be this list of all items from the iterable and the final one will be an empty list, with the intervening values the results of successive applications of init on the items. |
<T, V extends T> |
public static T |
inject(Collection<T> self, Closure<V> closure) Performs the same function as the version of inject that takes an initial value, but uses the head of the Collection as the initial value, and iterates over the tail. |
<E, T, U extends T, V extends T> |
public static T |
inject(Collection<E> self, U initialValue, Closure<V> closure) Iterates through the given Collection, passing in the initial value to the 2-arg closure along with the first item. |
<K, V, T, U extends T, W extends T> |
public static T |
inject(Map<K, V> self, U initialValue, Closure<W> closure) Iterates through the given Map, passing in the initial value to the 2-arg Closure along with the first item (or 3-arg Closure along with the first key and value). |
<E, T, U extends T, V extends T> |
public static T |
inject(Iterator<E> self, U initialValue, Closure<V> closure) Iterates through the given Iterator, passing in the initial value to the closure along with the first item. |
<T, V extends T> |
public static T |
inject(Object self, Closure<V> closure) Iterates through the given Object, passing in the first value to the closure along with the first item. |
<T, U extends T, V extends T> |
public static T |
inject(Object self, U initialValue, Closure<V> closure) Iterates through the given Object, passing in the initial value to the closure along with the first item. |
<E, T, V extends T> |
public static T |
inject(E[] self, Closure<V> closure) Iterates through the given array as with inject(Object[],initialValue,closure), but using the first element of the array as the initialValue, and then iterating the remaining elements of the array. |
<E, T, U extends T, V extends T> |
public static T |
inject(E[] self, U initialValue, Closure<V> closure) Iterates through the given array, passing in the initial value to the closure along with the first item. |
|
public static String |
inspect(Object self) Inspects returns the String that matches what would be typed into a terminal to create this object. |
|
public static Number |
intdiv(Character left, Number right) Integer Divide a Character by a Number. |
|
public static Number |
intdiv(Number left, Character right) Integer Divide a Number by a Character. |
|
public static Number |
intdiv(Character left, Character right) Integer Divide two Characters. |
|
public static Number |
intdiv(Number left, Number right) Integer Divide two Numbers. |
<T> |
public static Collection<T> |
intersect(Collection<T> left, Collection<T> right) Create a Collection composed of the intersection of both collections. |
<T> |
public static Collection<T> |
intersect(Collection<T> left, Collection<T> right, Comparator<T> comparator) Create a Collection composed of the intersection of both collections. |
<T> |
public static Collection<T> |
intersect(Iterable<T> left, Iterable<T> right) Create a Collection composed of the intersection of both iterables. |
<T> |
public static Collection<T> |
intersect(Iterable<T> left, Iterable<T> right, Comparator<T> comparator) Create a Collection composed of the intersection of both iterables. |
<T> |
public static List<T> |
intersect(List<T> left, Iterable<T> right) Create a List composed of the intersection of a List and an Iterable. |
<T> |
public static List<T> |
intersect(List<T> left, Iterable<T> right, Comparator<T> comparator) Create a List composed of the intersection of a List and an Iterable. |
<T> |
public static Set<T> |
intersect(Set<T> left, Iterable<T> right) Create a Set composed of the intersection of a Set and an Iterable. |
<T> |
public static Set<T> |
intersect(Set<T> left, Iterable<T> right, Comparator<T> comparator) Create a Set composed of the intersection of a Set and an Iterable. |
<T> |
public static SortedSet<T> |
intersect(SortedSet<T> left, Iterable<T> right) Create a SortedSet composed of the intersection of a SortedSet and an Iterable. |
<T> |
public static SortedSet<T> |
intersect(SortedSet<T> left, Iterable<T> right, Comparator<T> comparator) Create a SortedSet composed of the intersection of a SortedSet and an Iterable. |
<K, V> |
public static Map<K, V> |
intersect(Map<K, V> left, Map<K, V> right) Create a Map composed of the intersection of both maps. |
|
public static Object |
invokeMethod(Object object, String method, Object arguments) Provide a dynamic method invocation method which can be overloaded in classes to implement dynamic proxies easily. |
|
public static boolean |
is(Object self, Object other) Identity check. |
|
public static Boolean |
isAtLeast(BigDecimal left, BigDecimal right) Compare a BigDecimal to another. |
|
public static Boolean |
isAtLeast(BigDecimal left, String right) Compare a BigDecimal to a String representing a number. |
|
public static boolean |
isCase(Object caseValue, Object switchValue) Method for overloading the behavior of the 'case' method in switch statements. |
|
public static boolean |
isCase(Class caseValue, Object switchValue) Special 'Case' implementation for Class, which allows testing whether some switch value is assignable from the given case class. |
|
public static boolean |
isCase(Collection caseValue, Object switchValue) 'Case' implementation for collections which tests if the 'switch' operand is contained in any of the 'case' values. |
|
public static boolean |
isCase(Map caseValue, Object switchValue) 'Case' implementation for maps which tests the groovy truth value obtained using the 'switch' operand as key. |
|
public static boolean |
isCase(Number caseValue, Number switchValue) Special 'case' implementation for all numbers, which delegates to the compareTo() method for comparing numbers of different
types. |
|
public static boolean |
isDigit(Character self) Determines if a character is a digit. |
|
public static boolean |
isEmpty(Iterable self) Check whether an Iterable has elements
def items = [1] def iterable = { [ hasNext:{ ! |
|
public static boolean |
isLetter(Character self) Determines if a character is a letter. |
|
public static boolean |
isLetterOrDigit(Character self) Determines if a character is a letter or digit. |
|
public static boolean |
isLowerCase(Character self) Determine if a Character is lowercase. |
|
public static boolean |
isUpperCase(Character self) Determine if a Character is uppercase. |
|
public static boolean |
isWhitespace(Character self) Determines if a character is a whitespace character. |
<T> |
public static Iterator<T> |
iterator(T[] a) Attempts to create an Iterator for the given object by first converting it to a Collection. |
|
public static Iterator |
iterator(Object o) Attempts to create an Iterator for the given object by first converting it to a Collection. |
<T> |
public static Iterator<T> |
iterator(Enumeration<T> enumeration) Allows an Enumeration to behave like an Iterator. |
<T> |
public static Iterator<T> |
iterator(Iterator<T> self) An identity function for iterators, supporting 'duck-typing' when trying to get an iterator for each object within a collection, some of which may already be iterators. |
|
public static String |
join(Collection self, String separator)
|
|
public static String |
join(Iterator<?> self, String separator) Concatenates the toString() representation of each
item from the iterator, with the given String as a separator between
each item. |
|
public static String |
join(Iterable<?> self, String separator) Concatenates the toString() representation of each
item in this Iterable, with the given String as a separator between each item.
|
<T> |
public static String |
join(T[] self, String separator) Concatenates the toString() representation of each
items in this array, with the given String as a separator between each
item. |
|
public static String |
join(boolean[] self, String separator) Concatenates the string representation of each items in this array, with the given String as a separator between each item. |
|
public static String |
join(byte[] self, String separator) Concatenates the string representation of each items in this array, with the given String as a separator between each item. |
|
public static String |
join(char[] self, String separator) Concatenates the string representation of each items in this array, with the given String as a separator between each item. |
|
public static String |
join(double[] self, String separator) Concatenates the string representation of each items in this array, with the given String as a separator between each item. |
|
public static String |
join(float[] self, String separator) Concatenates the string representation of each items in this array, with the given String as a separator between each item. |
|
public static String |
join(int[] self, String separator) Concatenates the string representation of each items in this array, with the given String as a separator between each item. |
|
public static String |
join(long[] self, String separator) Concatenates the string representation of each items in this array, with the given String as a separator between each item. |
|
public static String |
join(short[] self, String separator) Concatenates the string representation of each items in this array, with the given String as a separator between each item. |
<T> |
public static T |
last(Deque<T> self) An optimized version of last(List). |
<T> |
public static T |
last(List<T> self) Returns the last item from the List. |
<T> |
public static T |
last(Iterable<T> self) Returns the last item from the Iterable. |
<T> |
public static T |
last(T[] self) Returns the last item from the array. |
<T> |
public static Collection<T> |
leftShift(Collection<T> self, T value) Overloads the left shift operator to provide an easy way to append objects to a Collection. |
<T> |
public static List<T> |
leftShift(List<T> self, T value) Overloads the left shift operator to provide an easy way to append objects to a List. |
<T> |
public static Set<T> |
leftShift(Set<T> self, T value) Overloads the left shift operator to provide an easy way to append objects to a Set. |
<T> |
public static SortedSet<T> |
leftShift(SortedSet<T> self, T value) Overloads the left shift operator to provide an easy way to append objects to a SortedSet. |
<T> |
public static BlockingQueue<T> |
leftShift(BlockingQueue<T> self, T value) Overloads the left shift operator to provide an easy way to append objects to a BlockingQueue. |
<K, V> |
public static Map<K, V> |
leftShift(Map<K, V> self, Map.Entry<K, V> entry) Overloads the left shift operator to provide an easy way to append Map.Entry values to a Map. |
<K, V> |
public static Map<K, V> |
leftShift(Map<K, V> self, Map<K, V> other) Overloads the left shift operator to provide an easy way to put one maps entries into another map. |
|
public static Number |
leftShift(Number self, Number operand) Implementation of the left shift operator for integral types. |
<K, V> |
public static Map.Entry<K, V> |
max(Map<K, V> self, Closure closure) Selects an entry in the map having the maximum calculated value as determined by the supplied closure. |
<T> |
public static T |
max(Collection<T> self)
|
<T> |
public static T |
max(Iterable<T> self) Adds max() method to Iterable objects. |
<T> |
public static T |
max(Iterator<T> self) Adds max() method to Iterator objects. |
<T> |
public static T |
max(T[] self) Adds max() method to Object arrays. |
<T> |
public static T |
max(Collection<T> self, Closure closure)
|
|
public static int |
max(int[] self) Adds max() method to int arrays. |
|
public static long |
max(long[] self) Adds max() method to long arrays. |
|
public static double |
max(double[] self) Adds max() method to double arrays. |
<T> |
public static T |
max(Iterable<T> self, Closure closure) Selects the item in the iterable which when passed as a parameter to the supplied closure returns the maximum value. |
<T> |
public static T |
max(Iterator<T> self, Closure closure) Selects the maximum value found from the Iterator using the closure to determine the correct ordering. |
<T> |
public static T |
max(T[] self, Closure closure) Selects the maximum value found from the Object array using the closure to determine the correct ordering. |
<T> |
public static T |
max(Collection<T> self, Comparator<T> comparator)
|
<T> |
public static T |
max(Iterable<T> self, Comparator<T> comparator) Selects the maximum value found in the Iterable using the given comparator. |
<T> |
public static T |
max(Iterator<T> self, Comparator<T> comparator) Selects the maximum value found from the Iterator using the given comparator. |
<T> |
public static T |
max(T[] self, Comparator<T> comparator) Selects the maximum value found from the Object array using the given comparator. |
|
public static MetaClass |
metaClass(Class self, Closure closure) Sets/updates the metaclass for a given class to a closure. |
|
public static MetaClass |
metaClass(Object self, Closure closure) Sets/updates the metaclass for a given object to a closure. |
<T> |
public static T |
min(Collection<T> self)
|
<T> |
public static T |
min(Iterable<T> self) Adds min() method to Collection objects. |
<T> |
public static T |
min(Iterator<T> self) Adds min() method to Iterator objects. |
<T> |
public static T |
min(T[] self) Adds min() method to Object arrays. |
<T> |
public static T |
min(Collection<T> self, Comparator<T> comparator)
|
|
public static int |
min(int[] self) Adds min() method to int arrays. |
|
public static long |
min(long[] self) Adds min() method to long arrays. |
|
public static double |
min(double[] self) Adds min() method to double arrays. |
<T> |
public static T |
min(Iterable<T> self, Comparator<T> comparator) Selects the minimum value found in the Iterable using the given comparator. |
<T> |
public static T |
min(Iterator<T> self, Comparator<T> comparator) Selects the minimum value found from the Iterator using the given comparator. |
<T> |
public static T |
min(T[] self, Comparator<T> comparator) Selects the minimum value found from the Object array using the given comparator. |
<T> |
public static T |
min(Collection<T> self, Closure closure)
|
<T> |
public static T |
min(Iterable<T> self, Closure closure) Selects the item in the iterable which when passed as a parameter to the supplied closure returns the minimum value. |
<K, V> |
public static Map.Entry<K, V> |
min(Map<K, V> self, Closure closure) Selects an entry in the map having the minimum calculated value as determined by the supplied closure. |
<T> |
public static T |
min(Iterator<T> self, Closure closure) Selects the minimum value found from the Iterator using the closure to determine the correct ordering. |
<T> |
public static T |
min(T[] self, Closure closure) Selects the minimum value found from the Object array using the closure to determine the correct ordering. |
<T> |
public static Set<T> |
minus(Set<T> self, Collection<?> removeMe) Create a Set composed of the elements of the first Set minus the elements of the given Collection. |
<T> |
public static Set<T> |
minus(Set<T> self, Iterable<?> removeMe) Create a Set composed of the elements of the first Set minus the elements from the given Iterable. |
<T> |
public static Set<T> |
minus(Set<T> self, Object removeMe) Create a Set composed of the elements of the first Set minus the given element. |
<T> |
public static SortedSet<T> |
minus(SortedSet<T> self, Collection<?> removeMe) Create a SortedSet composed of the elements of the first SortedSet minus the elements of the given Collection. |
<T> |
public static SortedSet<T> |
minus(SortedSet<T> self, Iterable<?> removeMe) Create a SortedSet composed of the elements of the first SortedSet minus the elements of the given Iterable. |
<T> |
public static SortedSet<T> |
minus(SortedSet<T> self, Object removeMe) Create a SortedSet composed of the elements of the first SortedSet minus the given element. |
<T> |
public static T[] |
minus(T[] self, Iterable removeMe) Create a new array composed of the elements of the first array minus the elements of the given Iterable. |
<T> |
public static T[] |
minus(T[] self, Object[] removeMe) Create a new array composed of the elements of the first array minus the elements of the given array. |
<T> |
public static List<T> |
minus(List<T> self, Collection<?> removeMe) Create a List composed of the elements of the first list minus every occurrence of elements of the given Collection. |
<T> |
public static Collection<T> |
minus(Collection<T> self, Collection<?> removeMe) Create a new Collection composed of the elements of the first Collection minus every occurrence of elements of the given Collection. |
<T> |
public static List<T> |
minus(List<T> self, Iterable<?> removeMe) Create a new List composed of the elements of the first List minus every occurrence of elements of the given Iterable. |
<T> |
public static Collection<T> |
minus(Iterable<T> self, Iterable<?> removeMe) Create a new Collection composed of the elements of the first Iterable minus every occurrence of elements of the given Iterable. |
<T> |
public static List<T> |
minus(List<T> self, Object removeMe) Create a new List composed of the elements of the first List minus every occurrence of the given element to remove. |
<T> |
public static Collection<T> |
minus(Iterable<T> self, Object removeMe) Create a new Collection composed of the elements of the first Iterable minus every occurrence of the given element to remove. |
<T> |
public static T[] |
minus(T[] self, Object removeMe) Create a new array composed of the elements of the first array minus the element to remove. |
<K, V> |
public static Map<K, V> |
minus(Map<K, V> self, Map removeMe) Create a Map composed of the entries of the first map minus the entries of the given map. |
|
public static Number |
minus(Character left, Number right) Subtract a Number from a Character. |
|
public static Number |
minus(Number left, Character right) Subtract a Character from a Number. |
|
public static Number |
minus(Character left, Character right) Subtract one Character from another. |
|
public static void |
mixin(MetaClass self, List<Class> categoryClasses) Extend object with category methods. |
|
public static void |
mixin(Class self, List<Class> categoryClasses) Extend class globally with category methods. |
|
public static void |
mixin(Class self, Class categoryClass) Extend class globally with category methods. |
|
public static void |
mixin(Class self, Class[] categoryClass) Extend class globally with category methods. |
|
public static void |
mixin(MetaClass self, Class categoryClass) Extend class globally with category methods. |
|
public static void |
mixin(MetaClass self, Class[] categoryClass) Extend class globally with category methods. |
|
public static Number |
mod(Number left, Number right) Performs a division modulus operation. |
<T> |
public static Collection<T> |
multiply(Collection<T> self, Number factor)
|
<T> |
public static Collection<T> |
multiply(Iterable<T> self, Number factor) Create a Collection composed of the elements of this Iterable, repeated a certain number of times. |
<T> |
public static List<T> |
multiply(List<T> self, Number factor) Create a List composed of the elements of this Iterable, repeated a certain number of times. |
|
public static Number |
multiply(Character left, Number right) Multiply a Character by a Number. |
|
public static Number |
multiply(Number left, Character right) Multiply a Number by a Character. |
|
public static Number |
multiply(Character left, Character right) Multiply two Characters. |
|
public static Number |
multiply(BigDecimal left, Double right) Multiply a BigDecimal and a Double. |
|
public static Number |
multiply(BigDecimal left, BigInteger right) Multiply a BigDecimal and a BigInteger. |
<T> |
public static T |
newInstance(Class<T> c) Convenience method to dynamically create a new instance of this class. |
<T> |
public static T |
newInstance(Class<T> c, Object[] args) Helper to construct a new instance from the given arguments. |
|
public static Character |
next(Character self) Increment a Character by one. |
|
public static Number |
next(Number self) Increment a Number by one. |
|
public T |
next() |
|
public static int |
numberAwareCompareTo(Comparable self, Comparable other) Provides a method that compares two comparables using Groovy's default number aware comparator. |
|
public static Number |
or(Number left, Number right) Bitwise OR together two numbers. |
|
public static BitSet |
or(BitSet left, BitSet right) Bitwise OR together two BitSets. |
|
public static Boolean |
or(Boolean left, Boolean right) Logical disjunction of two boolean operators |
<T> |
public static Set<List<T>> |
permutations(Iterable<T> self) Finds all permutations of an iterable. |
<T, V> |
public static List<V> |
permutations(Iterable<T> self, Closure<V> function) Finds all permutations of an iterable, applies a function to each permutation and collects the result into a list. |
<T, V> |
public static List<V> |
permutations(List<T> self, Closure<V> function)
|
<K, V> |
public static Map<K, V> |
plus(Map<K, V> left, Map<K, V> right) Returns a new Map containing all entries from left and right ,
giving precedence to right . |
<K, V> |
public static Map<K, V> |
plus(Map<K, V> self, Collection<? extends Map.Entry<? extends K, ? extends V>> entries) Returns a new Map containing all entries from self and entries ,
giving precedence to entries . |
<T> |
public static T[] |
plus(T[] left, T[] right) Create an array as a union of two arrays. |
<T> |
public static T[] |
plus(T[] left, T right) Create an array containing elements from an original array plus an additional appended element. |
<T> |
public static T[] |
plus(T[] left, Collection<T> right) Create an array containing elements from an original array plus those from a Collection. |
<T> |
public static T[] |
plus(T[] left, Iterable<T> right) Create an array containing elements from an original array plus those from an Iterable. |
<T> |
public static Collection<T> |
plus(Collection<T> left, Collection<T> right) Create a Collection as a union of two collections. |
<T> |
public static Collection<T> |
plus(Iterable<T> left, Iterable<T> right) Create a Collection as a union of two iterables. |
<T> |
public static Collection<T> |
plus(Collection<T> left, Iterable<T> right) Create a Collection as a union of a Collection and an Iterable. |
<T> |
public static List<T> |
plus(List<T> left, Iterable<T> right) Create a List as a union of a List and an Iterable. |
<T> |
public static List<T> |
plus(List<T> left, Collection<T> right) Create a List as a union of a List and a Collection. |
<T> |
public static Set<T> |
plus(Set<T> left, Iterable<T> right) Create a Set as a union of a Set and an Iterable. |
<T> |
public static Set<T> |
plus(Set<T> left, Collection<T> right) Create a Set as a union of a Set and a Collection. |
<T> |
public static SortedSet<T> |
plus(SortedSet<T> left, Iterable<T> right) Create a SortedSet as a union of a SortedSet and an Iterable. |
<T> |
public static SortedSet<T> |
plus(SortedSet<T> left, Collection<T> right) Create a SortedSet as a union of a SortedSet and a Collection. |
<T> |
public static List<T> |
plus(List<T> self, int index, T[] items) Creates a new List by inserting all of the elements in the specified array to the elements from the original List at the specified index. |
<T> |
public static List<T> |
plus(List<T> self, int index, List<T> additions) Creates a new List by inserting all of the elements in the given additions List to the elements from the original List at the specified index. |
<T> |
public static List<T> |
plus(List<T> self, int index, Iterable<T> additions) Creates a new List by inserting all of the elements in the given Iterable to the elements from this List at the specified index. |
<T> |
public static Collection<T> |
plus(Collection<T> left, T right) Create a collection as a union of a Collection and an Object. |
<T> |
public static Collection<T> |
plus(Iterable<T> left, T right) Create a collection as a union of an Iterable and an Object. |
<T> |
public static List<T> |
plus(List<T> left, T right) Create a List as a union of a List and an Object. |
<T> |
public static Set<T> |
plus(Set<T> left, T right) Create a Set as a union of a Set and an Object. |
<T> |
public static SortedSet<T> |
plus(SortedSet<T> left, T right) Create a SortedSet as a union of a SortedSet and an Object. |
|
public static Number |
plus(Character left, Number right) Add a Character and a Number. |
|
public static Number |
plus(Number left, Character right) Add a Number and a Character. |
|
public static Number |
plus(Character left, Character right) Add one Character to another. |
<T> |
public static T |
pop(List<T> self) Removes the initial item from the List. |
|
public static Number |
power(Number self, Number exponent) Power of a Number to a certain exponent. |
|
public static Number |
power(BigDecimal self, Integer exponent) Power of a BigDecimal to an integer certain exponent. |
|
public static Number |
power(BigInteger self, Integer exponent) Power of a BigInteger to an integer certain exponent. |
|
public static Number |
power(Integer self, Integer exponent) Power of an integer to an integer certain exponent. |
|
public static Number |
power(Long self, Integer exponent) Power of a long to an integer certain exponent. |
|
public static BigInteger |
power(BigInteger self, BigInteger exponent) Power of a BigInteger to a BigInteger certain exponent. |
|
public static Character |
previous(Character self) Decrement a Character by one. |
|
public static Number |
previous(Number self) Decrement a Number by one. |
|
protected static Object |
primitiveArrayGet(Object self, int idx) Implements the getAt(int) method for primitive type arrays. |
|
protected static List |
primitiveArrayGet(Object self, Range range) Implements the getAt(Range) method for primitive type arrays. |
|
protected static List |
primitiveArrayGet(Object self, Collection indices) Implements the getAt(Collection) method for primitive type arrays. |
|
protected static Object |
primitiveArrayPut(Object self, int idx, Object newValue) Implements the setAt(int idx) method for primitive type arrays. |
|
public static void |
print(Object self, Object value) Print a value formatted Groovy style to self if it is a Writer, otherwise to the standard output stream. |
|
public static void |
print(PrintWriter self, Object value) Print a value formatted Groovy style to the print writer. |
|
public static void |
print(PrintStream self, Object value) Print a value formatted Groovy style to the print stream. |
|
public static void |
print(Closure self, Object value) Print a value to the standard output stream. |
|
public static void |
print(Object self, PrintWriter out) Print to a console in interactive format. |
|
public static void |
printf(Object self, String format, Object[] values) Printf to the standard output stream. |
|
public static void |
printf(Closure self, String format, Object[] values) Printf 0 or more values to the standard output stream using a format string. |
|
public static void |
printf(Closure self, String format, Object value) Printf a value to the standard output stream using a format string. |
|
public static void |
printf(Object self, String format, Object arg) Prints a formatted string using the specified format string and arguments. |
|
public static void |
println(Object self) Print a linebreak to the standard output stream. |
|
public static void |
println(Closure self) Print a linebreak to the standard output stream. |
|
public static void |
println(Object self, Object value) Print a value formatted Groovy style (followed by a newline) to self if it is a Writer, otherwise to the standard output stream. |
|
public static void |
println(PrintWriter self, Object value) Print a value formatted Groovy style (followed by a newline) to the print writer. |
|
public static void |
println(PrintStream self, Object value) Print a value formatted Groovy style (followed by a newline) to the print stream. |
|
public static void |
println(Closure self, Object value) Print a value (followed by a newline) to the standard output stream. |
|
public static void |
println(Object self, PrintWriter out) Print to a console in interactive format. |
<T> |
public static boolean |
push(List<T> self, T value) Prepends an item to the start of the List. |
<K, V> |
public static Map<K, V> |
putAll(Map<K, V> self, Collection<? extends Map.Entry<? extends K, ? extends V>> entries) Provides an easy way to append multiple Map.Entry values to a Map. |
|
public static void |
putAt(Object self, String property, Object newValue) Allows the subscript operator to be used to set dynamically named property values. |
<T> |
public static void |
putAt(List<T> self, int idx, T value) A helper method to allow lists to work with subscript operators. |
<T> |
public static void |
putAt(List<T> self, Number idx, T value) Support subscript operator for list modification. |
|
public static void |
putAt(List self, EmptyRange range, Object value) A helper method to allow lists to work with subscript operators. |
|
public static void |
putAt(List self, EmptyRange range, Collection value) A helper method to allow lists to work with subscript operators. |
|
public static void |
putAt(List self, IntRange range, Collection col) List subscript assignment operator when given a range as the index and the assignment operand is a collection. |
|
public static void |
putAt(List self, IntRange range, Object value) List subscript assignment operator when given a range as the index. |
|
public static void |
putAt(List self, List splice, List values) A helper method to allow lists to work with subscript operators. |
|
public static void |
putAt(List self, List splice, Object value) A helper method to allow lists to work with subscript operators. |
<K, V> |
public static V |
putAt(Map<K, V> self, K key, V value) A helper method to allow maps to work with subscript operators |
|
public static void |
putAt(BitSet self, IntRange range, boolean value) Support assigning a range of values with a single assignment statement. |
|
public static void |
putAt(BitSet self, int index, boolean value) Support subscript-style assignment for a BitSet. |
|
public void |
remove() |
|
public static boolean |
removeAll(Collection self, Object[] items) Modifies this collection by removing its elements that are contained within the specified object array. |
<T> |
public static boolean |
removeAll(Collection<T> self, Closure condition) Modifies this collection by removing the elements that are matched according to the specified closure condition. |
<K, V> |
public static boolean |
removeAll(Map<K, V> self, Closure condition) Modifies this map by removing the elements that are matched according to the specified closure condition. |
<E> |
public static E |
removeAt(List<E> self, int index) Modifies this list by removing the element at the specified position in this list. |
<E> |
public static boolean |
removeElement(Collection<E> self, Object o) Modifies this collection by removing a single instance of the specified element from this collection, if it is present. |
<T> |
public static T |
removeLast(List<T> self) Removes the last item from the List. |
|
public static List<MetaMethod> |
respondsTo(Object self, String name, Object[] argTypes) |
|
public static List<MetaMethod> |
respondsTo(Object self, String name) |
|
public static boolean |
retainAll(Collection self, Object[] items) Modifies this collection so that it retains only its elements that are contained in the specified array. |
<T> |
public static boolean |
retainAll(Collection<T> self, Closure condition) Modifies this collection so that it retains only its elements that are matched according to the specified closure condition. |
<K, V> |
public static boolean |
retainAll(Map<K, V> self, Closure condition) Modifies this map so that it retains only its elements that are matched according to the specified closure condition. |
<T> |
public static List<T> |
reverse(List<T> self) Creates a new List with the identical contents to this list but in reverse order. |
<T> |
public static List<T> |
reverse(List<T> self, boolean mutate) Reverses the elements in a list. |
<T> |
public static T[] |
reverse(T[] self) Creates a new array containing items which are the same as this array but in reverse order. |
<T> |
public static T[] |
reverse(T[] self, boolean mutate) Reverse the items in an array. |
<T> |
public static Iterator<T> |
reverse(Iterator<T> self) Reverses the iterator. |
<K, V> |
public static Map<K, V> |
reverseEach(Map<K, V> self, Closure closure) Allows a Map to be iterated through in reverse order using a closure. |
<T> |
public static List<T> |
reverseEach(List<T> self, Closure closure) Iterate over each element of the list in the reverse order. |
<T> |
public static T[] |
reverseEach(T[] self, Closure closure) Iterate over each element of the array in the reverse order. |
|
public static Number |
rightShift(Number self, Number operand) Implementation of the right shift operator for integral types. |
|
public static Number |
rightShiftUnsigned(Number self, Number operand) Implementation of the right shift (unsigned) operator for integral types. |
|
public static int |
round(Float number) Round the value |
|
public static float |
round(Float number, int precision) Round the value |
|
public static long |
round(Double number) Round the value |
|
public static double |
round(Double number, int precision) Round the value |
|
public static BigDecimal |
round(BigDecimal number) Round the value |
|
public static BigDecimal |
round(BigDecimal number, int precision) Round the value |
|
public void |
run() |
|
public static TimerTask |
runAfter(Timer timer, int delay, Closure closure) Allows a simple syntax for using timers. |
|
public static void |
setMetaClass(Class self, MetaClass metaClass) Sets the metaclass for a given class. |
|
public static void |
setMetaClass(Object self, MetaClass metaClass) Set the metaclass for an object. |
|
public static void |
setMetaClass(GroovyObject self, MetaClass metaClass) Set the metaclass for a GroovyObject. |
|
public static void |
shuffle(List<?> self) Randomly reorders the elements of the specified list. |
|
public static void |
shuffle(List<?> self, Random rnd) Randomly reorders the elements of the specified list using the specified random instance as the source of randomness. |
<T> |
public static void |
shuffle(T[] self) Randomly reorders the elements of the specified array. |
<T> |
public static void |
shuffle(T[] self, Random rnd) Randomly reorders the elements of the specified array using the specified random instance as the source of randomness. |
<T> |
public static List<T> |
shuffled(List<T> self) Creates a new list containing the elements of the specified list but in a random order. |
<T> |
public static List<T> |
shuffled(List<T> self, Random rnd) Creates a new list containing the elements of the specified list but in a random order using the specified random instance as the source of randomness. |
<T> |
public static T[] |
shuffled(T[] self) Creates a new array containing the elements of the specified array but in a random order. |
<T> |
public static T[] |
shuffled(T[] self, Random rnd) Creates a new array containing the elements of the specified array but in a random order using the specified random instance as the source of randomness. |
|
public static int |
size(Iterator self) Provide the standard Groovy size() method for Iterator .
|
|
public static int |
size(Iterable self) Provide the standard Groovy size() method for Iterable .
|
|
public static int |
size(Object[] self) Provide the standard Groovy size() method for an array. |
|
public static int |
size(boolean[] array) Allows arrays to behave similar to collections. |
|
public static int |
size(byte[] array) Allows arrays to behave similar to collections. |
|
public static int |
size(char[] array) Allows arrays to behave similar to collections. |
|
public static int |
size(short[] array) Allows arrays to behave similar to collections. |
|
public static int |
size(int[] array) Allows arrays to behave similar to collections. |
|
public static int |
size(long[] array) Allows arrays to behave similar to collections. |
|
public static int |
size(float[] array) Allows arrays to behave similar to collections. |
|
public static int |
size(double[] array) Allows arrays to behave similar to collections. |
<T> |
public static List<T> |
sort(Iterable<T> self) Sorts the Collection. |
<T> |
public static List<T> |
sort(Iterable<T> self, boolean mutate) Sorts the Iterable. |
<K, V> |
public static Map<K, V> |
sort(Map<K, V> self, Closure closure) Sorts the elements from the given map into a new ordered map using the closure as a comparator to determine the ordering. |
<K, V> |
public static Map<K, V> |
sort(Map<K, V> self, Comparator<? super K> comparator) Sorts the elements from the given map into a new ordered Map using the specified key comparator to determine the ordering. |
<K, V> |
public static Map<K, V> |
sort(Map<K, V> self) Sorts the elements from the given map into a new ordered Map using the natural ordering of the keys to determine the ordering. |
<T> |
public static T[] |
sort(T[] self) Modifies this array so that its elements are in sorted order. |
<T> |
public static T[] |
sort(T[] self, boolean mutate) Sorts the given array into sorted order. |
<T> |
public static Iterator<T> |
sort(Iterator<T> self) Sorts the given iterator items into a sorted iterator. |
<T> |
public static Iterator<T> |
sort(Iterator<T> self, Comparator<? super T> comparator) Sorts the given iterator items into a sorted iterator using the comparator. |
<T> |
public static List<T> |
sort(Iterable<T> self, boolean mutate, Comparator<? super T> comparator) Sorts the Iterable using the given Comparator. |
<T> |
public static T[] |
sort(T[] self, Comparator<? super T> comparator) Sorts the given array into sorted order using the given comparator. |
<T> |
public static T[] |
sort(T[] self, boolean mutate, Comparator<? super T> comparator) Modifies this array so that its elements are in sorted order as determined by the given comparator. |
<T> |
public static Iterator<T> |
sort(Iterator<T> self, Closure closure) Sorts the given iterator items into a sorted iterator using the Closure to determine the correct ordering. |
<T> |
public static T[] |
sort(T[] self, Closure closure) Sorts the elements from this array into a newly created array using the Closure to determine the correct ordering. |
<T> |
public static T[] |
sort(T[] self, boolean mutate, Closure closure) Modifies this array so that its elements are in sorted order using the Closure to determine the correct ordering. |
<T> |
public static List<T> |
sort(Iterable<T> self, Closure closure) Sorts this Iterable using the given Closure to determine the correct ordering. |
<T> |
public static List<T> |
sort(Iterable<T> self, boolean mutate, Closure closure) Sorts this Iterable using the given Closure to determine the correct ordering. |
<T> |
public static SortedSet<T> |
sort(SortedSet<T> self) Avoids doing unnecessary work when sorting an already sorted set (i.e. an identity function for an already sorted set). |
<K, V> |
public static SortedMap<K, V> |
sort(SortedMap<K, V> self) Avoids doing unnecessary work when sorting an already sorted map (i.e. an identity function for an already sorted map). |
|
public static Collection |
split(Object self, Closure closure) Splits all items into two lists based on the closure condition. |
<T> |
public static Collection<Collection<T>> |
split(Collection<T> self, Closure closure) Splits all items into two collections based on the closure condition. |
<T> |
public static Collection<Collection<T>> |
split(T[] self, Closure closure) Splits all items into two collections based on the closure condition. |
<T> |
public static List<List<T>> |
split(List<T> self, Closure closure) Splits all items into two collections based on the closure condition. |
<T> |
public static List<Set<T>> |
split(Set<T> self, Closure closure) Splits all items into two collections based on the closure condition. |
|
public static SpreadMap |
spread(Map self) Synonym for toSpreadMap(java.util.Map). |
|
public static String |
sprintf(Object self, String format, Object[] values) Sprintf to a string. |
|
public static String |
sprintf(Object self, String format, Object arg) Returns a formatted string using the specified format string and arguments. |
|
public static void |
step(Number self, Number to, Number stepNumber, Closure closure) Iterates from this number up to the given number using a step increment. |
<K, V> |
public static Map<K, V> |
subMap(Map<K, V> map, Collection<K> keys) Creates a sub-Map containing the given keys. |
<K, V> |
public static Map<K, V> |
subMap(Map<K, V> map, K[] keys) Creates a sub-Map containing the given keys. |
<T> |
public static Set<List<T>> |
subsequences(List<T> self) Finds all non-null subsequences of a list. |
|
public static Object |
sum(Collection self)
|
|
public static Object |
sum(Iterable<?> self) Sums the items in an Iterable. |
|
public static Object |
sum(Object[] self) Sums the items in an array. |
|
public static Object |
sum(Iterator<Object> self) Sums the items from an Iterator. |
|
public static byte |
sum(byte[] self) Sums the items in an array. |
|
public static short |
sum(short[] self) Sums the items in an array. |
|
public static int |
sum(int[] self) Sums the items in an array. |
|
public static long |
sum(long[] self) Sums the items in an array. |
|
public static char |
sum(char[] self) Sums the items in an array. |
|
public static float |
sum(float[] self) Sums the items in an array. |
|
public static double |
sum(double[] self) Sums the items in an array. |
|
public static Object |
sum(Collection self, Object initialValue)
|
|
public static Object |
sum(Iterable<?> self, Object initialValue) Sums the items in an Iterable, adding the result to some initial value. |
|
public static Object |
sum(Object[] self, Object initialValue) Sums the items in an array, adding the result to some initial value. |
|
public static Object |
sum(Iterator<?> self, Object initialValue) Sums the items from an Iterator, adding the result to some initial value. |
|
public static byte |
sum(byte[] self, byte initialValue) Sums the items in an array, adding the result to some initial value. |
|
public static short |
sum(short[] self, short initialValue) Sums the items in an array, adding the result to some initial value. |
|
public static int |
sum(int[] self, int initialValue) Sums the items in an array, adding the result to some initial value. |
|
public static long |
sum(long[] self, long initialValue) Sums the items in an array, adding the result to some initial value. |
|
public static char |
sum(char[] self, char initialValue) Sums the items in an array, adding the result to some initial value. |
|
public static float |
sum(float[] self, float initialValue) Sums the items in an array, adding the result to some initial value. |
|
public static double |
sum(double[] self, double initialValue) Sums the items in an array, adding the result to some initial value. |
|
public static Object |
sum(Collection self, Closure closure)
|
<T> |
public static Object |
sum(Iterable<T> self, Closure closure) Sums the result of applying a closure to each item of an Iterable. |
<T> |
public static Object |
sum(T[] self, Closure closure) Sums the result of applying a closure to each item of an array. |
<T> |
public static Object |
sum(Iterator<T> self, Closure closure) Sums the result of applying a closure to each item returned from an iterator. |
|
public static Object |
sum(Collection self, Object initialValue, Closure closure)
|
<T> |
public static Object |
sum(Iterable<T> self, Object initialValue, Closure closure) Sums the result of applying a closure to each item of an Iterable to some initial value. |
<T> |
public static Object |
sum(T[] self, Object initialValue, Closure closure) Sums the result of applying a closure to each item of an array to some initial value. |
<T> |
public static Object |
sum(Iterator<T> self, Object initialValue, Closure closure) Sums the result of applying a closure to each item of an Iterator to some initial value. |
<T> |
public static List<T> |
swap(List<T> self, int i, int j) Swaps two elements at the specified positions. |
<T> |
public static T[] |
swap(T[] self, int i, int j) Swaps two elements at the specified positions. |
|
public static boolean[] |
swap(boolean[] self, int i, int j) Swaps two elements at the specified positions. |
|
public static byte[] |
swap(byte[] self, int i, int j) Swaps two elements at the specified positions. |
|
public static char[] |
swap(char[] self, int i, int j) Swaps two elements at the specified positions. |
|
public static double[] |
swap(double[] self, int i, int j) Swaps two elements at the specified positions. |
|
public static float[] |
swap(float[] self, int i, int j) Swaps two elements at the specified positions. |
|
public static int[] |
swap(int[] self, int i, int j) Swaps two elements at the specified positions. |
|
public static long[] |
swap(long[] self, int i, int j) Swaps two elements at the specified positions. |
|
public static short[] |
swap(short[] self, int i, int j) Swaps two elements at the specified positions. |
<T> |
public static List<T> |
tail(List<T> self) Returns the items from the List excluding the first item. |
<T> |
public static SortedSet<T> |
tail(SortedSet<T> self) Returns the items from the SortedSet excluding the first item. |
<T> |
public static Collection<T> |
tail(Iterable<T> self) Returns the items from the Iterable excluding the first item. |
<T> |
public static T[] |
tail(T[] self) Returns the items from the array excluding the first item. |
<T> |
public static Iterator<T> |
tail(Iterator<T> self) Returns the original iterator after throwing away the first element. |
<T> |
public static List<List<T>> |
tails(Iterable<T> self) Calculates the tail values of this Iterable: the first value will be this list of all items from the iterable and the final one will be an empty list, with the intervening values the results of successive applications of tail on the items. |
<T> |
public static List<T> |
take(List<T> self, int num) Returns the first num elements from the head of this List.
|
<T> |
public static SortedSet<T> |
take(SortedSet<T> self, int num) Returns the first num elements from the head of this SortedSet.
|
<T> |
public static T[] |
take(T[] self, int num) Returns the first num elements from the head of this array.
|
<T> |
public static Collection<T> |
take(Iterable<T> self, int num) Returns the first num elements from the head of this Iterable.
|
<K, V> |
public static Map<K, V> |
take(Map<K, V> self, int num) Returns a new map containing the first num elements from the head of this map.
|
<T> |
public static Iterator<T> |
take(Iterator<T> self, int num) Returns an iterator of up to the first num elements from this iterator.
|
<T> |
public static T[] |
takeRight(T[] self, int num) Returns the last num elements from the tail of this array.
|
<T> |
public static Collection<T> |
takeRight(Iterable<T> self, int num) Returns the last num elements from the tail of this Iterable.
|
<T> |
public static List<T> |
takeRight(List<T> self, int num) Returns the last num elements from the tail of this List.
|
<T> |
public static SortedSet<T> |
takeRight(SortedSet<T> self, int num) Returns the last num elements from the tail of this SortedSet.
|
<T> |
public static List<T> |
takeWhile(List<T> self, Closure condition) Returns the longest prefix of this list where each element passed to the given closure condition evaluates to true. |
<T> |
public static Collection<T> |
takeWhile(Iterable<T> self, Closure condition) Returns a Collection containing the longest prefix of the elements from this Iterable where each element passed to the given closure evaluates to true. |
<T> |
public static SortedSet<T> |
takeWhile(SortedSet<T> self, Closure condition) Returns the longest prefix of this SortedSet where each element passed to the given closure condition evaluates to true. |
<K, V> |
public static Map<K, V> |
takeWhile(Map<K, V> self, Closure condition) Returns the longest prefix of this Map where each entry (or key/value pair) when passed to the given closure evaluates to true. |
<T> |
public static T[] |
takeWhile(T[] self, Closure condition) Returns the longest prefix of this array where each element passed to the given closure evaluates to true. |
<T> |
public static Iterator<T> |
takeWhile(Iterator<T> self, Closure condition) Returns the longest prefix of elements in this iterator where each element passed to the given condition closure evaluates to true. |
<T, U> |
public static U |
tap(U self, Closure<T> closure) Allows the closure to be called for the object reference self (similar to with and always returns self. |
|
public static void |
times(Number self, Closure closure) Executes the closure this many times, starting from zero. |
|
public static String |
toArrayString(Object[] self) Returns the string representation of the given array. |
|
public static BigDecimal |
toBigDecimal(Number self) Transform a Number into a BigDecimal |
|
public static BigInteger |
toBigInteger(Number self) Transform this Number into a BigInteger. |
|
public static Boolean |
toBoolean(Boolean self) Identity conversion which returns Boolean.TRUE for a true Boolean and Boolean.FALSE for a false Boolean. |
|
public static Double |
toDouble(Number self) Transform a Number into a Double |
|
public static Float |
toFloat(Number self) Transform a Number into a Float |
|
public static Integer |
toInteger(Number self) Transform a Number into an Integer |
<T> |
public static List<T> |
toList(Collection<T> self)
|
<T> |
public static List<T> |
toList(Iterator<T> self) Convert an iterator to a List. |
<T> |
public static List<T> |
toList(Iterable<T> self) Convert an Iterable to a List. |
<T> |
public static List<T> |
toList(Enumeration<T> self) Convert an enumeration to a List. |
<T> |
public static List<T> |
toList(T[] array) Allows conversion of arrays into a mutable List. |
|
public static List<Byte> |
toList(byte[] array) Converts this array to a List of the same size, with each element added to the list. |
|
public static List<Boolean> |
toList(boolean[] array) Converts this array to a List of the same size, with each element added to the list. |
|
public static List<Character> |
toList(char[] array) Converts this array to a List of the same size, with each element added to the list. |
|
public static List<Short> |
toList(short[] array) Converts this array to a List of the same size, with each element added to the list. |
|
public static List<Integer> |
toList(int[] array) Converts this array to a List of the same size, with each element added to the list. |
|
public static List<Long> |
toList(long[] array) Converts this array to a List of the same size, with each element added to the list. |
|
public static List<Float> |
toList(float[] array) Converts this array to a List of the same size, with each element added to the list. |
|
public static List<Double> |
toList(double[] array) Converts this array to a List of the same size, with each element added to the list. |
|
public static String |
toListString(Collection self) Returns the string representation of the given list. |
|
public static String |
toListString(Collection self, int maxSize) Returns the string representation of the given list. |
|
public static Long |
toLong(Number self) Transform a Number into a Long |
|
public static char |
toLowerCase(Character self) Converts the character to lowercase. |
|
public static String |
toMapString(Map self) Returns the string representation of this map. |
|
public static String |
toMapString(Map self, int maxSize) Returns the string representation of this map. |
|
public static Set<Byte> |
toSet(byte[] array) Converts this array to a Set, with each unique element added to the set. |
|
public static Set<Boolean> |
toSet(boolean[] array) Converts this array to a Set, with each unique element added to the set. |
|
public static Set<Character> |
toSet(char[] array) Converts this array to a Set, with each unique element added to the set. |
|
public static Set<Short> |
toSet(short[] array) Converts this array to a Set, with each unique element added to the set. |
|
public static Set<Integer> |
toSet(int[] array) Converts this array to a Set, with each unique element added to the set. |
|
public static Set<Long> |
toSet(long[] array) Converts this array to a Set, with each unique element added to the set. |
|
public static Set<Float> |
toSet(float[] array) Converts this array to a Set, with each unique element added to the set. |
|
public static Set<Double> |
toSet(double[] array) Converts this array to a Set, with each unique element added to the set. |
<T> |
public static Set<T> |
toSet(Collection<T> self) Convert a Collection to a Set. |
<T> |
public static Set<T> |
toSet(Iterable<T> self) Convert an Iterable to a Set. |
<T> |
public static Set<T> |
toSet(Iterator<T> self) Convert an iterator to a Set. |
<T> |
public static Set<T> |
toSet(Enumeration<T> self) Convert an enumeration to a Set. |
<T> |
public static List<T> |
toSorted(Iterable<T> self) Sorts the Iterable. |
<T> |
public static List<T> |
toSorted(Iterable<T> self, Comparator<T> comparator) Sorts the Iterable using the given Comparator. |
<T> |
public static List<T> |
toSorted(Iterable<T> self, Closure closure) Sorts this Iterable using the given Closure to determine the correct ordering. |
<T> |
public static Iterator<T> |
toSorted(Iterator<T> self) Sorts the Iterator. |
<T> |
public static Iterator<T> |
toSorted(Iterator<T> self, Comparator<T> comparator) Sorts the given iterator items using the comparator. |
<T> |
public static Iterator<T> |
toSorted(Iterator<T> self, Closure closure) Sorts the given iterator items into a sorted iterator using the Closure to determine the correct ordering. |
<T> |
public static T[] |
toSorted(T[] self) Returns a sorted version of the given array using the supplied comparator. |
<T> |
public static T[] |
toSorted(T[] self, Comparator<T> comparator) Returns a sorted version of the given array using the supplied comparator to determine the resulting order. |
<T> |
public static T[] |
toSorted(T[] self, Closure condition) Sorts the elements from this array into a newly created array using the Closure to determine the correct ordering. |
<K, V> |
public static Map<K, V> |
toSorted(Map<K, V> self) Sorts the elements from the given map into a new ordered map using a NumberAwareComparator on map entry values to determine the resulting order. |
<K, V> |
public static Map<K, V> |
toSorted(Map<K, V> self, Comparator<Map.Entry<K, V>> comparator) Sorts the elements from the given map into a new ordered map using the supplied comparator to determine the ordering. |
<K, V> |
public static Map<K, V> |
toSorted(Map<K, V> self, Closure condition) Sorts the elements from the given map into a new ordered map using the supplied Closure condition as a comparator to determine the ordering. |
<T> |
public static Set<T> |
toSorted(SortedSet<T> self) Avoids doing unnecessary work when sorting an already sorted set |
<K, V> |
public static Map<K, V> |
toSorted(SortedMap<K, V> self) Avoids doing unnecessary work when sorting an already sorted map |
|
public static SpreadMap |
toSpreadMap(Map self) Returns a new SpreadMap from this map. |
|
public static SpreadMap |
toSpreadMap(Object[] self) Creates a spreadable map from this array. |
|
public static SpreadMap |
toSpreadMap(List self) Creates a spreadable map from this list. |
|
public static SpreadMap |
toSpreadMap(Iterable self) Creates a spreadable map from this iterable. |
|
public static String |
toString(boolean[] self) Returns the string representation of the given array. |
|
public static String |
toString(byte[] self) Returns the string representation of the given array. |
|
public static String |
toString(char[] self) Returns the string representation of the given array. |
|
public static String |
toString(short[] self) Returns the string representation of the given array. |
|
public static String |
toString(int[] self) Returns the string representation of the given array. |
|
public static String |
toString(long[] self) Returns the string representation of the given array. |
|
public static String |
toString(float[] self) Returns the string representation of the given array. |
|
public static String |
toString(double[] self) Returns the string representation of the given array. |
|
public static String |
toString(AbstractMap self) Returns the string representation of the given map. |
|
public static String |
toString(AbstractCollection self) Returns the string representation of the given collection. |
|
public static String |
toString(Object[] self) Returns the string representation of this array's contents. |
|
public static String |
toString(Object value) Create a String representation of this object. |
<T> |
public static Iterator<T> |
toUnique(Iterator<T> self, Closure condition) Returns an iterator equivalent to this iterator but with all duplicated items removed where duplicate (equal) items are deduced by calling the supplied Closure condition. |
<T> |
public static Iterator<T> |
toUnique(Iterator<T> self, Comparator<T> comparator) Returns an iterator equivalent to this iterator with all duplicated items removed by using the supplied comparator. |
<T> |
public static Iterator<T> |
toUnique(Iterator<T> self) Returns an iterator equivalent to this iterator with all duplicated items removed by using the natural ordering of the items. |
<T> |
public static Collection<T> |
toUnique(Iterable<T> self, Comparator<T> comparator) Returns a Collection containing the items from the Iterable but with duplicates removed. |
<T> |
public static List<T> |
toUnique(List<T> self, Comparator<T> comparator) Returns a List containing the items from the List but with duplicates removed. |
<T> |
public static Collection<T> |
toUnique(Iterable<T> self) Returns a Collection containing the items from the Iterable but with duplicates removed using the natural ordering of the items to determine uniqueness. |
<T> |
public static List<T> |
toUnique(List<T> self) Returns a List containing the items from the List but with duplicates removed using the natural ordering of the items to determine uniqueness. |
<T> |
public static Collection<T> |
toUnique(Iterable<T> self, Closure condition) Returns a Collection containing the items from the Iterable but with duplicates removed. |
<T> |
public static List<T> |
toUnique(List<T> self, Closure condition) Returns a List containing the items from the List but with duplicates removed. |
<T> |
public static T[] |
toUnique(T[] self, Comparator<T> comparator) Returns a new Array containing the items from the original Array but with duplicates removed with the supplied comparator determining which items are unique. |
<T> |
public static T[] |
toUnique(T[] self) Returns a new Array containing the items from the original Array but with duplicates removed using the natural ordering of the items in the array. |
<T> |
public static T[] |
toUnique(T[] self, Closure condition) Returns a new Array containing the items from the original Array but with duplicates removed with the supplied comparator determining which items are unique. |
|
public static char |
toUpperCase(Character self) Converts the character to uppercase. |
|
public static List |
transpose(List self) Adds GroovyCollections#transpose(List) as a method on lists. |
|
public static int |
transpose(int self) A transpose method for 2D int arrays. |
|
public static long |
transpose(long self) A transpose method for 2D long arrays. |
|
public static double |
transpose(double self) A transpose method for 2D double arrays. |
|
public static float |
trunc(Float number, int precision) Truncate the value |
|
public static float |
trunc(Float number) Truncate the value |
|
public static double |
trunc(Double number) Truncate the value |
|
public static double |
trunc(Double number, int precision) Truncate the value |
|
public static BigDecimal |
trunc(BigDecimal number) Truncate the value |
|
public static BigDecimal |
trunc(BigDecimal number, int precision) Truncate the value |
|
public static Number |
unaryMinus(Number left) Negates the number. |
|
public static Number |
unaryPlus(Number left) Returns the number, effectively being a noop for numbers. |
<T> |
public static Iterator<T> |
unique(Iterator<T> self) Returns an iterator equivalent to this iterator with all duplicated items removed by using Groovy's default number-aware comparator. |
<T> |
public static Collection<T> |
unique(Collection<T> self) Modifies this collection to remove all duplicated items, using Groovy's default number-aware comparator. |
<T> |
public static List<T> |
unique(List<T> self) Modifies this List to remove all duplicated items, using Groovy's default number-aware comparator. |
<T> |
public static Collection<T> |
unique(Collection<T> self, boolean mutate) Remove all duplicates from a given Collection using Groovy's default number-aware comparator. |
<T> |
public static List<T> |
unique(List<T> self, boolean mutate) Remove all duplicates from a given List using Groovy's default number-aware comparator. |
<T> |
public static Iterator<T> |
unique(Iterator<T> self, Closure condition) Returns an iterator equivalent to this iterator but with all duplicated items removed by using a Closure to determine duplicate (equal) items. |
<T> |
public static Collection<T> |
unique(Collection<T> self, Closure closure) A convenience method for making a collection unique using a Closure to determine duplicate (equal) items. |
<T> |
public static List<T> |
unique(List<T> self, Closure closure) A convenience method for making a List unique using a Closure to determine duplicate (equal) items. |
<T> |
public static Collection<T> |
unique(Collection<T> self, boolean mutate, Closure closure) A convenience method for making a collection unique using a Closure to determine duplicate (equal) items. |
<T> |
public static List<T> |
unique(List<T> self, boolean mutate, Closure closure) A convenience method for making a List unique using a Closure to determine duplicate (equal) items. |
<T> |
public static Iterator<T> |
unique(Iterator<T> self, Comparator<T> comparator) Returns an iterator equivalent to this iterator with all duplicated items removed by using the supplied comparator. |
<T> |
public static Collection<T> |
unique(Collection<T> self, Comparator<T> comparator) Remove all duplicates from a given Collection. |
<T> |
public static List<T> |
unique(List<T> self, Comparator<T> comparator) Remove all duplicates from a given List. |
<T> |
public static Collection<T> |
unique(Collection<T> self, boolean mutate, Comparator<T> comparator) Remove all duplicates from a given Collection. |
<T> |
public static List<T> |
unique(List<T> self, boolean mutate, Comparator<T> comparator) Remove all duplicates from a given List. |
|
public static void |
upto(Number self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
|
public static void |
upto(long self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
|
public static void |
upto(Long self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
|
public static void |
upto(float self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
|
public static void |
upto(Float self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
|
public static void |
upto(double self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
|
public static void |
upto(Double self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
|
public static void |
upto(BigInteger self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
|
public static void |
upto(BigDecimal self, Number to, Closure closure) Iterates from this number up to the given number, inclusive, incrementing by one each time. |
<T> |
public static T |
use(Object self, Class categoryClass, Closure<T> closure) Scoped use method |
<T> |
public static T |
use(Object self, List<Class> categoryClassList, Closure<T> closure) Scoped use method with list of categories. |
|
public static Object |
use(Object self, Object[] array) Allows you to use a list of categories, specifying the list as varargs. |
<T, U> |
public static T |
with(U self, Closure<T> closure) Allows the closure to be called for the object reference self. |
<T, U extends T, V extends T> |
public static T |
with(U self, boolean returning, Closure<T> closure) Allows the closure to be called for the object reference self. |
<K, V> |
public static Map<K, V> |
withDefault(Map<K, V> self, Closure<V> init) Wraps a map using the decorator pattern with a wrapper that intercepts all calls to get(key) . |
<T> |
public static ListWithDefault<T> |
withDefault(List<T> self, Closure<T> init) An alias for withLazyDefault which decorates a list allowing
it to grow when called with index values outside the normal list bounds. |
<T> |
public static List<T> |
withDefault$$bridge(List<T> self, Closure<T> init) |
<T> |
public static ListWithDefault<T> |
withEagerDefault(List<T> self, Closure<T> init) Decorates a list allowing it to grow when called with a non-existent index value. |
<T> |
public static List<T> |
withEagerDefault$$bridge(List<T> self, Closure<T> init) |
<E> |
public static List<Tuple2<E, Integer>> |
withIndex(Iterable<E> self) Zips an Iterable with indices in (value, index) order. |
<E> |
public static List<Tuple2<E, Integer>> |
withIndex(Iterable<E> self, int offset) Zips an Iterable with indices in (value, index) order. |
<E> |
public static Iterator<Tuple2<E, Integer>> |
withIndex(Iterator<E> self) Zips an iterator with indices in (value, index) order. |
<E> |
public static Iterator<Tuple2<E, Integer>> |
withIndex(Iterator<E> self, int offset) Zips an iterator with indices in (value, index) order. |
<T> |
public static ListWithDefault<T> |
withLazyDefault(List<T> self, Closure<T> init) Decorates a list allowing it to grow when called with a non-existent index value. |
<T> |
public static List<T> |
withLazyDefault$$bridge(List<T> self, Closure<T> init) |
|
public static Object |
withTraits(Object self, Class<?> traits) Dynamically wraps an instance into something which implements the supplied trait classes. |
|
public static BitSet |
xor(BitSet left, BitSet right) Bitwise XOR together two BitSets. |
|
public static Number |
xor(Number left, Number right) Bitwise XOR together two Numbers. |
|
public static Boolean |
xor(Boolean left, Boolean right) Exclusive disjunction of two boolean operators |
Get the absolute value
number
- a LongGet the absolute value
number
- a FloatGet the absolute value
number
- a Double Modifies the collection by adding all of the elements in the specified array to the collection.
The behavior of this operation is undefined if
the specified array is modified while the operation is in progress.
See also plus
or the '+' operator if wanting to produce a new collection
containing additional items but while leaving the original collection unchanged.
self
- a Collection to be modifieditems
- array containing elements to be added to this collection Modifies this list by inserting all of the elements in the specified array into the
list at the specified position. Shifts the
element currently at that position (if any) and any subsequent
elements to the right (increases their indices). The new elements
will appear in this list in the order that they occur in the array.
The behavior of this operation is undefined if the specified array
is modified while the operation is in progress.
See also plus
for similar functionality with copy semantics, i.e. which produces a new
list after adding the additional items at the specified position but leaves the original list unchanged.
self
- a list to be modifieditems
- array containing elements to be added to this collectionindex
- index at which to insert the first element from the
specified arrayAdds all items from the iterator to the Collection.
self
- the collectionitems
- the items to addAdds all items from the iterable to the Collection.
self
- the collectionitems
- the items to addAllows the usage of addShutdownHook without getting the runtime first.
self
- the object the method is called on (ignored)closure
- the shutdown hook actionBitwise AND together two Numbers.
left
- a Numberright
- another Number to bitwise ANDBitwise AND together two BitSets.
left
- a BitSetright
- another BitSet to bitwise ANDLogical conjunction of two boolean operators.
left
- left operatorright
- right operatorIterates over the contents of an object or collection, and checks whether a predicate is valid for at least one element.
assert [1, 2, 3].any { it == 2 }
assert ![1, 2, 3].any { it >
3 }
self
- the object over which we iteratepredicate
- the closure predicate used for matchingIterates over the contents of an iterator, and checks whether a predicate is valid for at least one element.
assert [1, 2, 3].iterator().any { it == 2 }
assert ![1, 2, 3].iterator().any { it >
3 }
self
- the iterator over which we iteratepredicate
- the closure predicate used for matchingIterates over the contents of an iterable, and checks whether a predicate is valid for at least one element.
assert [1, 2, 3].any { it == 2 }
assert ![1, 2, 3].any { it >
3 }
self
- the iterable over which we iteratepredicate
- the closure predicate used for matchingIterates over the contents of an Array, and checks whether a predicate is valid for at least one element.
self
- the array over which we iteratepredicate
- the closure predicate used for matchingIterates over the entries of a map, and checks whether a predicate is valid for at least one entry. If the closure takes one parameter then it will be passed the Map.Entry otherwise if the closure takes two parameters then it will be passed the key and the value.
assert [2:3, 4:5, 5:10].any { key, value->
key * 2 == value } assert ![2:3, 4:5, 5:10].any { entry->
entry.key == entry.value * 2 }
self
- the map over which we iteratepredicate
- the 1 or 2 arg closure predicate used for matching Iterates over the elements of a collection, and checks whether at least
one element is true according to the Groovy Truth.
Equivalent to self.any({element ->
element})
assert [false, true].any() assert [0, 1].any() assert ![0, 0].any()
self
- the object over which we iterateCoerce an object instance to a boolean value. An object is coerced to true if it's not null, to false if it is null.
object
- the object to coerceCoerce a Boolean instance to a boolean value.
bool
- the BooleanCoerce a collection instance to a boolean value. A collection is coerced to false if it's empty, and to true otherwise.
assert [1,2].asBoolean() == true
assert [].asBoolean() == false
collection
- the collectionCoerce a map instance to a boolean value. A map is coerced to false if it's empty, and to true otherwise.
assert [:] as Boolean == false assert [a:2] as Boolean == true
map
- the mapCoerce an iterator instance to a boolean value. An iterator is coerced to false if there are no more elements to iterate over, and to true otherwise.
iterator
- the iteratorCoerce an enumeration instance to a boolean value. An enumeration is coerced to false if there are no more elements to enumerate, and to true otherwise.
enumeration
- the enumerationCoerce an Object array to a boolean value. An Object array is false if the array is of length 0. and to true otherwise
array
- the arrayCoerces a byte array to a boolean value. A byte array is false if the array is of length 0, and true otherwise.
array
- an arrayCoerces a short array to a boolean value. A short array is false if the array is of length 0, and true otherwise.
array
- an arrayCoerces an int array to a boolean value. An int array is false if the array is of length 0, and true otherwise.
array
- an arrayCoerces a long array to a boolean value. A long array is false if the array is of length 0, and true otherwise.
array
- an arrayCoerces a float array to a boolean value. A float array is false if the array is of length 0, and true otherwise.
array
- an arrayCoerces a double array to a boolean value. A double array is false if the array is of length 0, and true otherwise.
array
- an arrayCoerces a boolean array to a boolean value. A boolean array is false if the array is of length 0, and true otherwise.
array
- an arrayCoerces a char array to a boolean value. A char array is false if the array is of length 0, and true otherwise.
array
- an arrayCoerce a Float instance to a boolean value.
object
- the Floattrue
for non-zero and non-NaN values, else false
Coerce a Double instance to a boolean value.
object
- the Doubletrue
for non-zero and non-NaN values, else false
Coerce a number to a boolean value. A number is coerced to false if its double value is equal to 0, and to true otherwise.
number
- the numberConverts this Iterable to a Collection. Returns the original Iterable if it is already a Collection.
Example usage:
assert new HashSet().asCollection() instanceof Collection
self
- an Iterable to be converted into a CollectionA convenience method for creating an immutable Map.
self
- a MapA convenience method for creating an immutable SortedMap.
self
- a SortedMapA convenience method for creating an immutable List.
def mutable = [1,2,3] def immutable = mutable.asImmutable() try { immutable << 4 assert false } catch (UnsupportedOperationException) { assert true } mutable << 4 assert mutable.size() == 4 assert immutable.size() == 3
self
- a ListA convenience method for creating an immutable Set.
self
- a SetA convenience method for creating an immutable SortedSet.
self
- a SortedSetA convenience method for creating an immutable Collection.
self
- a CollectionConverts this Iterable to a List. Returns the original Iterable if it is already a List.
Example usage:
assert new HashSet().asList() instanceof List
self
- an Iterable to be converted into a ListGet the detail information of Throwable instance's stack trace
self
- a Throwable instanceA convenience method for creating a synchronized Map.
self
- a MapA convenience method for creating a synchronized SortedMap.
self
- a SortedMapA convenience method for creating a synchronized Collection.
self
- a CollectionA convenience method for creating a synchronized List.
self
- a ListA convenience method for creating a synchronized Set.
self
- a SetA convenience method for creating a synchronized SortedSet.
self
- a SortedSetConverts the given iterable to another type.
iterable
- a Iterableclazz
- the desired classConverts the given collection to another type. A default concrete type is used for List, Set, or SortedSet. If the given type has a constructor taking a collection, that is used. Otherwise, the call is deferred to asType(Object,Class). If this collection is already of the given type, the same instance is returned.
col
- a collectionclazz
- the desired classConverts the given array to either a List, Set, or SortedSet. If the given class is something else, the call is deferred to asType(Object,Class).
ary
- an arrayclazz
- the desired classCoerces the closure to an implementation of the given class. The class is assumed to be an interface or class with a single method definition. The closure is used as the implementation of that single method.
impl
- the implementation of the single methodtype
- the target typeCoerces this map to the given type, using the map's keys as the public method names, and values as the implementation. Typically the value would be a closure which behaves like the method implementation.
map
- this mapclazz
- the target typeTransform this number to a the given type, using the 'as' operator. The following types are supported in addition to the default asType(java.lang.Object, java.lang.Class):
self
- this numberc
- the desired type of the transformed resultConverts a given object to a type. This method is used through the "as" operator and is overloadable as any other operator.
obj
- the object to converttype
- the goal typeCreates an unmodifiable view of a Map.
self
- a MapCreates an unmodifiable view of a SortedMap.
self
- a SortedMapCreates an unmodifiable view of a List.
def mutable = [1,2,3] def unmodifiable = mutable.asUnmodifiable() try { unmodifiable << 4 assert false } catch (UnsupportedOperationException) { assert true } mutable << 4 assert unmodifiable.size() == 4
self
- a ListCreates an unmodifiable view of a Set.
self
- a SetCreates an unmodifiable view of a SortedSet.
self
- a SortedSetCreates an unmodifiable view of a Collection.
self
- a CollectionAverages the items in an Iterable. This is equivalent to invoking the "plus" method on all items in the Iterable and then dividing by the total count using the "div" method for the resulting sum.
assert 3 == [1, 2, 6].average()
self
- Iterable of values to averageAverages the items in an array. This is equivalent to invoking the "plus" method on all items in the array and then dividing by the total count using the "div" method for the resulting sum.
assert 3 == ([1, 2, 6] as Integer[]).average()
self
- The array of values to average Averages the items from an Iterator. This is equivalent to invoking the
"plus" method on all items in the array and then dividing by the
total count using the "div" method for the resulting sum.
The iterator will become exhausted of elements after determining the average value.
While most frequently used with aggregates of numbers,
average
will work with any class supporting plus
and div
, e.g.:
class Stars { int numStars = 0 String toString() { '*' * numStars } Stars plus(Stars other) { new Stars(numStars: numStars + other.numStars) } Stars div(Number divisor) { int newSize = numStars.intdiv(divisor) new Stars(numStars: newSize) } } def stars = [new Stars(numStars: 1), new Stars(numStars: 3)] assert stars*.toString() == ['*', '***'] assert stars.average().toString() == '**'
self
- an Iterator for the values to averageCalculates the average of the bytes in the array.
assert 5.0G == ([2,4,6,8] as byte[]).average()
self
- The array of values to calculate the average ofCalculates the average of the shorts in the array.
assert 5.0G == ([2,4,6,8] as short[]).average()
self
- The array of values to calculate the average ofCalculates the average of the ints in the array.
assert 5.0G == ([2,4,6,8] as int[]).average()
self
- The array of values to calculate the average ofCalculates the average of the longs in the array.
assert 5.0G == ([2,4,6,8] as long[]).average()
self
- The array of values to calculate the average ofCalculates the average of the floats in the array.
assert 5.0d == ([2,4,6,8] as float[]).average()
self
- The array of values to calculate the average ofCalculates the average of the doubles in the array.
assert 5.0d == ([2,4,6,8] as double[]).average()
self
- The array of values to calculate the average of Averages the result of applying a closure to each item of an Iterable.
iter.average(closure)
is equivalent to:
iter.collect(closure).average()
.
assert 20 == [1, 3].average { it * 10 } assert 3 == ['to', 'from'].average { it.size() }
self
- an Iterableclosure
- a single parameter closure that returns a (typically) numeric value. Averages the result of applying a closure to each item of an array.
array.average(closure)
is equivalent to:
array.collect(closure).average()
.
def (nums, strings) = [[1, 3] as Integer[], ['to', 'from'] as String[]] assert 20 == nums.average { it * 10 } assert 3 == strings.average { it.size() } assert 3 == strings.average (String::size)
self
- An arrayclosure
- a single parameter closure that returns a (typically) numeric value. Averages the result of applying a closure to each item returned from an iterator.
iter.average(closure)
is equivalent to:
iter.collect(closure).average()
.
The iterator will become exhausted of elements after determining the average value.
self
- An Iteratorclosure
- a single parameter closure that returns a (typically) numeric value.Bitwise NEGATE a BitSet.
self
- a BitSetBitwise NEGATE a Number.
left
- a Number Returns a BufferedIterator
that allows examining the next element without
consuming it.
assert [1, 2, 3, 4].iterator().buffered().with { [head(), toList()] } == [1, [1, 2, 3, 4]]
self
- an iterator object Returns a BufferedIterator
that allows examining the next element without
consuming it.
assert new LinkedHashSet([1,2,3,4]).bufferedIterator().with { [head(), toList()] } == [1, [1,2,3,4]]
self
- an iterable object Returns a BufferedIterator
that allows examining the next element without
consuming it.
assert [1, 2, 3, 4].bufferedIterator().with { [head(), toList()] } == [1, [1, 2, 3, 4]]
self
- a listChops the array into pieces, returning lists with sizes corresponding to the supplied chop sizes. If the array isn't large enough, truncated (possibly empty) pieces are returned. Using a chop size of -1 will cause that piece to contain all remaining items from the array.
self
- an Array to be choppedchopSizes
- the sizes for the returned piecesChops the Iterable into pieces, returning lists with sizes corresponding to the supplied chop sizes. If the Iterable isn't large enough, truncated (possibly empty) pieces are returned. Using a chop size of -1 will cause that piece to contain all remaining items from the Iterable.
Example usage:
assert [1, 2, 3, 4].chop(1) == [[1]] assert [1, 2, 3, 4].chop(1,-1) == [[1], [2, 3, 4]] assert ('a'..'h').chop(2, 4) == [['a', 'b'], ['c', 'd', 'e', 'f']] assert ['a', 'b', 'c', 'd', 'e'].chop(3) == [['a', 'b', 'c']] assert ['a', 'b', 'c', 'd', 'e'].chop(1, 2, 3) == [['a'], ['b', 'c'], ['d', 'e']] assert ['a', 'b', 'c', 'd', 'e'].chop(1, 2, 3, 3, 3) == [['a'], ['b', 'c'], ['d', 'e'], [], []]
self
- an Iterable to be choppedchopSizes
- the sizes for the returned piecesChops the iterator items into pieces, returning lists with sizes corresponding to the supplied chop sizes. If the iterator is exhausted early, truncated (possibly empty) pieces are returned. Using a chop size of -1 will cause that piece to contain all remaining items from the iterator.
self
- an Iterator to be choppedchopSizes
- the sizes for the returned pieces Collates this iterable into sub-lists of length size
.
Example:
def list = [ 1, 2, 3, 4, 5, 6, 7 ] def coll = list.collate( 3 ) assert coll == [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7 ] ]
self
- an Iterablesize
- the length of each sub-list in the returned listCollates an array.
self
- an arraysize
- the length of each sub-list in the returned list Collates this iterable into sub-lists of length size
stepping through the code step
elements for each subList.
Example:
def list = [ 1, 2, 3, 4 ] def coll = list.collate( 3, 1 ) assert coll == [ [ 1, 2, 3 ], [ 2, 3, 4 ], [ 3, 4 ], [ 4 ] ]
self
- an Iterablesize
- the length of each sub-list in the returned liststep
- the number of elements to step through for each sub-listCollates an array into sub-lists.
self
- an arraysize
- the length of each sub-list in the returned liststep
- the number of elements to step through for each sub-list Collates this iterable into sub-lists of length size
. Any remaining elements in
the iterable after the subdivision will be dropped if keepRemainder
is false.
Example:
def list = [ 1, 2, 3, 4, 5, 6, 7 ] def coll = list.collate( 3, false ) assert coll == [ [ 1, 2, 3 ], [ 4, 5, 6 ] ]
self
- an Iterablesize
- the length of each sub-list in the returned listkeepRemainder
- if true, any remaining elements are returned as sub-lists. Otherwise they are discardedCollates this array into sub-lists.
self
- an arraysize
- the length of each sub-list in the returned listkeepRemainder
- if true, any remaining elements are returned as sub-lists. Otherwise they are discarded Collates this iterable into sub-lists of length size
stepping through the code step
elements for each sub-list. Any remaining elements in the iterable after the subdivision will be dropped if
keepRemainder
is false.
Example:
def list = [ 1, 2, 3, 4 ] assert list.collate( 2, 2, true ) == [ [ 1, 2 ], [ 3, 4 ] ] assert list.collate( 3, 1, true ) == [ [ 1, 2, 3 ], [ 2, 3, 4 ], [ 3, 4 ], [ 4 ] ] assert list.collate( 3, 1, false ) == [ [ 1, 2, 3 ], [ 2, 3, 4 ] ]
self
- an Iterablesize
- the length of each sub-list in the returned liststep
- the number of elements to step through for each sub-listkeepRemainder
- if true, any remaining elements are returned as sub-lists. Otherwise they are discardedCollates this array into into sub-lists.
self
- an arraysize
- the length of each sub-list in the returned liststep
- the number of elements to step through for each sub-listkeepRemainder
- if true, any remaining elements are returned as sub-lists. Otherwise they are discardedIterates through this aggregate Object transforming each item into a new value using Closure.IDENTITY as a transformer, basically returning a list of items copied from the original object.
assert [1,2,3] == [1,2,3].iterator().collect()
self
- an aggregate Object with an Iterator returning its items Iterates through this aggregate Object transforming each item into a new value using the
transform
closure, returning a list of transformed values.
Example:
def list = [1, 'a', 1.23, true ] def types = list.collect { it.class } assert types == [Integer, String, BigDecimal, Boolean]
self
- an aggregate Object with an Iterator returning its itemstransform
- the closure used to transform each item of the aggregate object Iterates through this aggregate Object transforming each item into a new value using the transform
closure
and adding it to the supplied collector
.
self
- an aggregate Object with an Iterator returning its itemscollector
- the Collection to which the transformed values are addedtransform
- the closure used to transform each item of the aggregate object Iterates through this Array transforming each item into a new value using the
transform
closure, returning a list of transformed values.
self
- an Arraytransform
- the closure used to transform each item of the Array Iterates through this Array transforming each item into a new value using the transform
closure
and adding it to the supplied collector
.
Integer[] nums = [1,2,3] Listanswer = [] nums.collect(answer) { it * 2 } assert [2,4,6] == answer
self
- an Arraycollector
- the Collection to which the transformed values are addedtransform
- the closure used to transform each item Iterates through this Iterator transforming each item into a new value using the
transform
closure, returning a list of transformed values.
self
- an Iteratortransform
- the closure used to transform each item Iterates through this Iterator transforming each item into a new value using the transform
closure
and adding it to the supplied collector
.
self
- an Iteratorcollector
- the Collection to which the transformed values are addedtransform
- the closure used to transform each itemIterates through this collection transforming each entry into a new value using Closure.IDENTITY as a transformer, basically returning a list of items copied from the original collection.
assert [1,2,3] == [1,2,3].collect()
self
- a collection Iterates through this collection transforming each entry into a new value using the transform
closure
returning a list of transformed values.
self
- a collectiontransform
- the closure used to transform each item of the collection Iterates through this collection transforming each value into a new value using the transform
closure
and adding it to the supplied collector
.
assert [1,2,3] as HashSet == [2,4,5,6].collect(new HashSet()) { (int)(it / 2) }
self
- a collectioncollector
- the Collection to which the transformed values are addedtransform
- the closure used to transform each item of the collectionIterates through this collection transforming each entry into a new value using Closure.IDENTITY as a transformer, basically returning a list of items copied from the original collection.
assert [1,2,3] == [1,2,3].collect()
self
- an Iterable Iterates through this Iterable transforming each entry into a new value using the transform
closure
returning a list of transformed values.
assert [2,4,6] == [1,2,3].collect { it * 2 }
self
- an Iterabletransform
- the closure used to transform each item of the collection Iterates through this collection transforming each value into a new value using the transform
closure
and adding it to the supplied collector
.
assert [1,2,3] as HashSet == [2,4,5,6].collect(new HashSet()) { (int)(it / 2) }
self
- an Iterablecollector
- the Collection to which the transformed values are addedtransform
- the closure used to transform each item Iterates through this Map transforming each map entry into a new value using the transform
closure
returning the collector
with all transformed values added to it.
assert [a:1, b:2].collect( [] as HashSet ) { key, value->
key*value } == ["a", "bb"] as Set assert [3:20, 2:30].collect( [] as HashSet ) { entry->
entry.key * entry.value } == [60] as Set
self
- a Mapcollector
- the Collection to which transformed values are addedtransform
- the transformation closure which can take one (Map.Entry) or two (key, value) parameters Iterates through this Map transforming each map entry into a new value using the transform
closure
returning a list of transformed values.
assert [a:1, b:2].collect { key, value->
key*value } == ["a", "bb"] assert [3:20, 2:30].collect { entry->
entry.key * entry.value } == [60, 60]
self
- a Maptransform
- the transformation closure which can take one (Map.Entry) or two (key, value) parametersDeprecated alias for collectNested
Deprecated alias for collectNested
Iterates through this Map transforming each map entry using the transform
closure
returning a map of the transformed entries.
assert [a:1, b:2].collectEntries( [:] ) { k, vNote: When using the list-style of result, the behavior is '->
[v, k] } == [1:'a', 2:'b'] assert [a:1, b:2].collectEntries( [30:'C'] ) { key, value->
[(value*10): key.toUpperCase()] } == [10:'A', 20:'B', 30:'C']
def (key, value) = listResultFromClosure
'.
While we strongly discourage using a list of size other than 2, Groovy's normal semantics apply in this case;
throwing away elements after the second one and using null for the key or value for the case of a shortened list.
If your collector Map doesn't support null keys or values, you might get a runtime error, e.g. NullPointerException or IllegalArgumentException.
self
- a Mapcollector
- the Map into which the transformed entries are puttransform
- the closure used for transforming, which can take one (Map.Entry) or two (key, value) parameters and
should return a Map.Entry, a Map or a two-element list containing the resulting key and value Iterates through this Map transforming each entry using the transform
closure
and returning a map of the transformed entries.
assert [a:1, b:2].collectEntries { key, valueNote: When using the list-style of result, the behavior is '->
[value, key] } == [1:'a', 2:'b'] assert [a:1, b:2].collectEntries { key, value->
[(value*10): key.toUpperCase()] } == [10:'A', 20:'B']
def (key, value) = listResultFromClosure
'.
While we strongly discourage using a list of size other than 2, Groovy's normal semantics apply in this case;
throwing away elements after the second one and using null for the key or value for the case of a shortened list.
If your Map doesn't support null keys or values, you might get a runtime error, e.g. NullPointerException or IllegalArgumentException.
self
- a Maptransform
- the closure used for transforming, which can take one (Map.Entry) or two (key, value) parameters and
should return a Map.Entry, a Map or a two-element list containing the resulting key and valueA variant of collectEntries for Iterators.
self
- an Iteratortransform
- the closure used for transforming, which has an item from self as the parameter and
should return a Map.Entry, a Map or a two-element list containing the resulting key and value Iterates through this Iterable transforming each item using the transform
closure
and returning a map of the resulting transformed entries.
def letters = "abc" // collect letters with index using list style assert (0..2).collectEntries { indexNote: When using the list-style of result, the behavior is '->
[index, letters[index]] } == [0:'a', 1:'b', 2:'c'] // collect letters with index using map style assert (0..2).collectEntries { index->
[(index): letters[index]] } == [0:'a', 1:'b', 2:'c']
def (key, value) = listResultFromClosure
'.
While we strongly discourage using a list of size other than 2, Groovy's normal semantics apply in this case;
throwing away elements after the second one and using null for the key or value for the case of a shortened list.
self
- an Iterabletransform
- the closure used for transforming, which has an item from self as the parameter and
should return a Map.Entry, a Map or a two-element list containing the resulting key and valueA variant of collectEntries for Iterators using the identity closure as the transform.
self
- an Iterator A variant of collectEntries for Iterable objects using the identity closure as the transform.
The source Iterable should contain a list of [key, value]
tuples or Map.Entry
objects.
def nums = [1, 10, 100, 1000] def tuples = nums.collect{ [it, it.toString().size()] } assert tuples == [[1, 1], [10, 2], [100, 3], [1000, 4]] def map = tuples.collectEntries() assert map == [1:1, 10:2, 100:3, 1000:4]
self
- an IterableA variant of collectEntries for Iterators using a supplied map as the destination of transformed entries.
self
- an Iteratorcollector
- the Map into which the transformed entries are puttransform
- the closure used for transforming, which has an item from self as the parameter and
should return a Map.Entry, a Map or a two-element list containing the resulting key and valueIterates through this Iterable transforming each item using the closure as a transformer into a map entry, returning the supplied map with all of the transformed entries added to it.
def letters = "abc" // collect letters with index assert (0..2).collectEntries( [:] ) { indexNote: When using the list-style of result, the behavior is '->
[index, letters[index]] } == [0:'a', 1:'b', 2:'c'] assert (0..2).collectEntries( [4:'d'] ) { index->
[(index+1): letters[index]] } == [1:'a', 2:'b', 3:'c', 4:'d']
def (key, value) = listResultFromClosure
'.
While we strongly discourage using a list of size other than 2, Groovy's normal semantics apply in this case;
throwing away elements after the second one and using null for the key or value for the case of a shortened list.
If your collector Map doesn't support null keys or values, you might get a runtime error, e.g. NullPointerException or IllegalArgumentException.
self
- an Iterablecollector
- the Map into which the transformed entries are puttransform
- the closure used for transforming, which has an item from self as the parameter and
should return a Map.Entry, a Map or a two-element list containing the resulting key and valueA variant of collectEntries for Iterators using the identity closure as the transform and a supplied map as the destination of transformed entries.
self
- an Iteratorcollector
- the Map into which the transformed entries are putA variant of collectEntries for Iterables using the identity closure as the transform and a supplied map as the destination of transformed entries.
self
- an Iterablecollector
- the Map into which the transformed entries are put Iterates through this array transforming each item using the transform
closure
and returning a map of the resulting transformed entries.
def letters = "abc" def nums = [0, 1, 2] as Integer[] // collect letters with index assert nums.collectEntries( [:] ) { indexNote: When using the list-style of result, the behavior is '->
[index, letters[index]] } == [0:'a', 1:'b', 2:'c'] assert nums.collectEntries( [4:'d'] ) { index->
[(index+1): letters[index]] } == [1:'a', 2:'b', 3:'c', 4:'d']
def (key, value) = listResultFromClosure
'.
While we strongly discourage using a list of size other than 2, Groovy's normal semantics apply in this case;
throwing away elements after the second one and using null for the key or value for the case of a shortened list.
If your collector Map doesn't support null keys or values, you might get a runtime error, e.g. NullPointerException or IllegalArgumentException.
self
- an arraycollector
- the Map into which the transformed entries are puttransform
- the closure used for transforming, which has an item from self as the parameter and
should return a Map.Entry, a Map or a two-element list containing the resulting key and valueA variant of collectEntries using the identity closure as the transform.
self
- an arraycollector
- the Map into which the transformed entries are put Iterates through this array transforming each item using the transform
closure
and returning a map of the resulting transformed entries.
def letters = "abc" def nums = [0, 1, 2] as Integer[] // collect letters with index using list style assert nums.collectEntries { indexNote: When using the list-style of result, the behavior is '->
[index, letters[index]] } == [0:'a', 1:'b', 2:'c'] // collect letters with index using map style assert nums.collectEntries { index->
[(index): letters[index]] } == [0:'a', 1:'b', 2:'c']
def (key, value) = listResultFromClosure
'.
While we strongly discourage using a list of size other than 2, Groovy's normal semantics apply in this case;
throwing away elements after the second one and using null for the key or value for the case of a shortened list.
self
- a Collectiontransform
- the closure used for transforming, which has an item from self as the parameter and
should return a Map.Entry, a Map or a two-element list containing the resulting key and valueA variant of collectEntries using the identity closure as the transform.
self
- an arrayProjects each item from a source Iterable to a collection and concatenates (flattens) the resulting collections into a single list.
def nums = 1..10
def squaresAndCubesOfEvens = nums.collectMany{ it % 2 ? [] : [it**2, it**3] }
assert squaresAndCubesOfEvens == [4, 8, 16, 64, 36, 216, 64, 512, 100, 1000]
def animals = ['CAT', 'DOG', 'ELEPHANT'] as Set
def smallAnimals = animals.collectMany{ it.size() >
3 ? [] : [it.toLowerCase()] }
assert smallAnimals == ['cat', 'dog']
def orig = nums as Set
def origPlusIncrements = orig.collectMany{ [it, it+1] }
assert origPlusIncrements.size() == orig.size() * 2
assert origPlusIncrements.unique().size() == orig.size() + 1
self
- an Iterableprojection
- a projecting Closure returning a collection of items Projects each item from a source collection to a result collection and concatenates (flattens) the resulting
collections adding them into the collector
.
def animals = ['CAT', 'DOG', 'ELEPHANT'] as Set
def smallAnimals = animals.collectMany(['ant', 'bee']){ it.size() >
3 ? [] : [it.toLowerCase()] }
assert smallAnimals == ['ant', 'bee', 'cat', 'dog']
def nums = 1..5
def origPlusIncrements = nums.collectMany([] as Set){ [it, it+1] }
assert origPlusIncrements.size() == nums.size() + 1
self
- an Iterablecollector
- an initial collection to add the projected items toprojection
- a projecting Closure returning a collection of items Projects each item from a source map to a result collection and concatenates (flattens) the resulting
collections adding them into the collector
.
def map = [bread:3, milk:5, butter:2]
def result = map.collectMany(['x']){ k, v ->
k.startsWith('b') ? k.toList() : [] }
assert result == ['x', 'b', 'r', 'e', 'a', 'd', 'b', 'u', 't', 't', 'e', 'r']
self
- a mapcollector
- an initial collection to add the projected items toprojection
- a projecting Closure returning a collection of itemsProjects each item from a source map to a result collection and concatenates (flattens) the resulting collections adding them into a collection.
def map = [bread:3, milk:5, butter:2]
def result = map.collectMany{ k, v ->
k.startsWith('b') ? k.toList() : [] }
assert result == ['b', 'r', 'e', 'a', 'd', 'b', 'u', 't', 't', 'e', 'r']
self
- a mapprojection
- a projecting Closure returning a collection of itemsProjects each item from a source array to a collection and concatenates (flattens) the resulting collections into a single list.
def nums = [1, 2, 3, 4, 5, 6] as Object[] def squaresAndCubesOfEvens = nums.collectMany{ it % 2 ? [] : [it**2, it**3] } assert squaresAndCubesOfEvens == [4, 8, 16, 64, 36, 216]
self
- an arrayprojection
- a projecting Closure returning a collection of itemsProjects each item from a source array to a collection and concatenates (flattens) the resulting collections into a single list.
def nums = [1, 2, 3, 4, 5, 6] as Object[] def squaresAndCubesOfEvens = nums.collectMany{ it % 2 ? [] : [it**2, it**3] } assert squaresAndCubesOfEvens == [4, 8, 16, 64, 36, 216]
self
- an arraycollector
- an initial collection to add the projected items toprojection
- a projecting Closure returning a collection of itemsProjects each item from a source iterator to a collection and concatenates (flattens) the resulting collections into a single list.
def numsIter = [1, 2, 3, 4, 5, 6].iterator() def squaresAndCubesOfEvens = numsIter.collectMany{ it % 2 ? [] : [it**2, it**3] } assert squaresAndCubesOfEvens == [4, 8, 16, 64, 36, 216]
self
- an iteratorcollector
- an initial collection to add the projected items toprojection
- a projecting Closure returning a collection of itemsProjects each item from a source iterator to a collection and concatenates (flattens) the resulting collections into a single list.
def numsIter = [1, 2, 3, 4, 5, 6].iterator() def squaresAndCubesOfEvens = numsIter.collectMany{ it % 2 ? [] : [it**2, it**3] } assert squaresAndCubesOfEvens == [4, 8, 16, 64, 36, 216]
self
- an iteratorprojection
- a projecting Closure returning a collection of itemsRecursively iterates through this collection transforming each non-Collection value into a new value using the closure as a transformer. Returns a potentially nested list of transformed values.
assert [2,[4,6],[8],[]] == [1,[2,3],[4],[]].collectNested { it * 2 }
self
- a collectiontransform
- the closure used to transform each item of the collectionRecursively iterates through this Iterable transforming each non-Collection value into a new value using the closure as a transformer. Returns a potentially nested list of transformed values.
assert [2,[4,6],[8],[]] == [1,[2,3],[4],[]].collectNested { it * 2 }
self
- an Iterabletransform
- the closure used to transform each item of the Iterable Recursively iterates through this Iterable transforming each non-Collection value
into a new value using the transform
closure. Returns a potentially nested
collection of transformed values.
def x = [1,[2,3],[4],[]].collectNested(new Vector()) { it * 2 } assert x == [2,[4,6],[8],[]] assert x instanceof Vector
self
- an Iterablecollector
- an initial Collection to which the transformed values are addedtransform
- the closure used to transform each element of the IterableAdds GroovyCollections#combinations(Iterable) as a method on Iterables.
Example usage:
assert [['a', 'b'],[1, 2, 3]].combinations() == [['a', 1], ['b', 1], ['a', 2], ['b', 2], ['a', 3], ['b', 3]]
self
- an Iterable of collectionsAdds GroovyCollections#combinations(Iterable, Closure) as a method on collections.
Example usage:
assert [[2, 3],[4, 5, 6]].combinations {x,y ->
x*y } == [8, 12, 10, 15, 12, 18]
self
- a Collection of listsfunction
- a closure to be called on each combinationCompare a Character and a Number. The ordinal value of the Character is used in the comparison (the ordinal value is the unicode value which for simple character sets is the ASCII value).
left
- a Characterright
- a NumberCompare a Number and a Character. The ordinal value of the Character is used in the comparison (the ordinal value is the unicode value which for simple character sets is the ASCII value).
left
- a Numberright
- a CharacterCompare two Characters. The ordinal values of the Characters are compared (the ordinal value is the unicode value which for simple character sets is the ASCII value).
left
- a Characterright
- a CharacterCompare two Numbers. Equality (==) for numbers dispatches to this.
left
- a Numberright
- another Number to compare toReturns true if this iterable contains the item.
self
- an Iterable to be checked for containmentitem
- an Object to be checked for containment in this iterableChecks whether the array contains the given value.
self
- the array we are searchingvalue
- the value being searched forChecks whether the array contains the given value.
self
- the array we are searchingvalue
- the value being searched forChecks whether the array contains the given value.
self
- the array we are searchingvalue
- the value being searched forChecks whether the array contains the given value.
self
- the array we are searchingvalue
- the value being searched forChecks whether the array contains the given value.
self
- the array within which we count the number of occurrencesvalue
- the value being searched forChecks whether the array contains the given value.
self
- the array we are searchingvalue
- the value being searched forChecks whether the array contains the given value.
self
- the array we are searchingvalue
- the value being searched forChecks whether the array contains the given value.
self
- the array we are searchingvalue
- the value being searched forChecks whether the array contains the given value.
self
- the array we are searchingvalue
- the value being searched forReturns true if this iterable contains all of the elements in the specified array.
self
- an Iterable to be checked for containmentitems
- array to be checked for containment in this iterable Counts the number of occurrences of the given value from the
items within this Iterator.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
The iterator will become exhausted of elements after determining the count value.
self
- the Iterator from which we count the number of matching occurrencesvalue
- the value being searched forCounts the number of occurrences which satisfy the given closure from the items within this Iterator. The iterator will become exhausted of elements after determining the count value.
Example usage:
assert [2,4,2,1,3,5,2,4,3].toSet().iterator().count{ it % 2 == 0 } == 2
self
- the Iterator from which we count the number of matching occurrencesclosure
- a closure condition Counts the number of occurrences of the given value inside this Iterable.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
Example usage:
assert [2,4,2,1,3,5,2,4,3].count(4) == 2
self
- the Iterable within which we count the number of occurrencesvalue
- the value being searched forCounts the number of occurrences which satisfy the given closure from inside this Iterable.
Example usage:
assert [2,4,2,1,3,5,2,4,3].count{ it % 2 == 0 } == 5
self
- the Iterable within which we count the number of occurrencesclosure
- a closure conditionCounts the number of occurrences which satisfy the given closure from inside this map. If the closure takes one parameter then it will be passed the Map.Entry. Otherwise, the closure should take two parameters and will be passed the key and value.
Example usage:
assert [a:1, b:1, c:2, d:2].count{ k,v->
k == 'a'||
v == 2 } == 3
self
- the map within which we count the number of occurrencesclosure
- a 1 or 2 arg Closure condition applying on the entries Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched forCounts the number of occurrences which satisfy the given closure from inside this array.
self
- the array within which we count the number of occurrencesclosure
- a closure condition Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched for Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched for Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched for Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched for Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched for Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched for Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched for Counts the number of occurrences of the given value inside this array.
Comparison is done using Groovy's == operator (using
compareTo(value) == 0
or equals(value)
).
self
- the array within which we count the number of occurrencesvalue
- the value being searched forSorts all collection members into groups determined by the supplied mapping closure and counts the group size. The closure should return the key that each item should be grouped by. The returned Map will have an entry for each distinct key returned from the closure, with each value being the frequency of items occurring for that group.
Example usage:
assert [0:2, 1:3] == [1,2,3,4,5].countBy { it % 2 }
self
- a collection to group and countclosure
- a closure mapping items to the frequency keysSorts all array members into groups determined by the supplied mapping closure and counts the group size. The closure should return the key that each item should be grouped by. The returned Map will have an entry for each distinct key returned from the closure, with each value being the frequency of items occurring for that group.
Example usage:
assert ([1,2,2,2,3] as Object[]).countBy{ it % 2 } == [1:2, 0:3]
self
- an array to group and countclosure
- a closure mapping items to the frequency keysSorts all iterator items into groups determined by the supplied mapping closure and counts the group size. The closure should return the key that each item should be grouped by. The returned Map will have an entry for each distinct key returned from the closure, with each value being the frequency of items occurring for that group.
Example usage:
assert [1,2,2,2,3].toSet().iterator().countBy{ it % 2 } == [1:2, 0:1]
self
- an iterator to group and countclosure
- a closure mapping items to the frequency keysGroups the members of a map into groups determined by the supplied mapping closure and counts the frequency of the created groups. The closure will be passed a Map.Entry or key and value (depending on the number of parameters the closure accepts) and should return the key that each item should be grouped under. The resulting map will have an entry for each 'group' key returned by the closure, with values being the frequency counts for that 'group'.
def result = [a:1,b:2,c:3,d:4,e:5].countBy { it.value % 2 } assert result == [0:2, 1:3]
self
- a map to group and countclosure
- a closure mapping entries to frequency count keys Returns true
if the intersection of two iterables is empty.
assert [1,2,3].disjoint([3,4,5]) == false
assert [1,2].disjoint([3,4]) == true
left
- an Iterableright
- an Iterabletrue
if the intersection of two iterables
is empty, false
otherwise.Divide a Character by a Number. The ordinal value of the Character is used in the division (the ordinal value is the unicode value which for simple character sets is the ASCII value).
left
- a Characterright
- a NumberDivide a Number by a Character. The ordinal value of the Character is used in the division (the ordinal value is the unicode value which for simple character sets is the ASCII value).
left
- a Numberright
- a CharacterDivide one Character by another. The ordinal values of the Characters are used in the division (the ordinal value is the unicode value which for simple character sets is the ASCII value).
left
- a Characterright
- another CharacterIterates from this number down to the given number, inclusive, decrementing by one each time.
self
- a Numberto
- another Number to go down toclosure
- the closure to callIterates from this number down to the given number, inclusive, decrementing by one each time.
self
- a longto
- the end numberclosure
- the code to execute for each numberIterates from this number down to the given number, inclusive, decrementing by one each time.
self
- a Longto
- the end numberclosure
- the code to execute for each numberIterates from this number down to the given number, inclusive, decrementing by one each time.
self
- a floatto
- the end numberclosure
- the code to execute for each numberIterates from this number down to the given number, inclusive, decrementing by one each time.
self
- a Floatto
- the end numberclosure
- the code to execute for each numberIterates from this number down to the given number, inclusive, decrementing by one each time.
self
- a doubleto
- the end numberclosure
- the code to execute for each numberIterates from this number down to the given number, inclusive, decrementing by one each time.
self
- a Doubleto
- the end numberclosure
- the code to execute for each numberIterates from this number down to the given number, inclusive, decrementing by one each time.
self
- a BigIntegerto
- the end numberclosure
- the code to execute for each numberIterates from this number down to the given number, inclusive, decrementing by one each time. Each number is passed to the closure. Example:
10.5.downto(0) { println it }Prints numbers 10.5, 9.5 ... to 0.5.
self
- a BigDecimalto
- the end numberclosure
- the code to execute for each numberDrops the given number of elements from the head of this List.
def strings = [ 'a', 'b', 'c' ] as SortedSet assert strings.drop( 0 ) == [ 'a', 'b', 'c' ] as SortedSet assert strings.drop( 2 ) == [ 'c' ] as SortedSet assert strings.drop( 5 ) == [] as SortedSet
self
- the original SortedSetnum
- the number of elements to drop from this Iterablenum
elements,
or an empty list if it has less then num
elements.Drops the given number of elements from the head of this List.
def strings = [ 'a', 'b', 'c' ] assert strings.drop( 0 ) == [ 'a', 'b', 'c' ] assert strings.drop( 2 ) == [ 'c' ] assert strings.drop( 5 ) == []
self
- the original Listnum
- the number of elements to drop from this Iterablenum
elements,
or an empty list if it has less then num
elements.Drops the given number of elements from the head of this Iterable.
def strings = [ 'a', 'b', 'c' ] assert strings.drop( 0 ) == [ 'a', 'b', 'c' ] assert strings.drop( 2 ) == [ 'c' ] assert strings.drop( 5 ) == [] class AbcIterable implements Iterable{ Iterator iterator() { "abc".iterator() } } def abc = new AbcIterable() assert abc.drop(0) == ['a', 'b', 'c'] assert abc.drop(1) == ['b', 'c'] assert abc.drop(3) == [] assert abc.drop(5) == []
self
- the original Iterablenum
- the number of elements to drop from this Iterablenum
elements,
or an empty list if it has less then num
elements.Drops the given number of elements from the head of this array if they are available.
String[] strings = [ 'a', 'b', 'c' ] assert strings.drop( 0 ) == [ 'a', 'b', 'c' ] as String[] assert strings.drop( 2 ) == [ 'c' ] as String[] assert strings.drop( 5 ) == [] as String[]
self
- the original arraynum
- the number of elements to drop from this arraynum
ones, or else the empty array, if this
array has less than num
elements.Drops the given number of key/value pairs from the head of this map if they are available.
def strings = [ 'a':10, 'b':20, 'c':30 ] assert strings.drop( 0 ) == [ 'a':10, 'b':20, 'c':30 ] assert strings.drop( 2 ) == [ 'c':30 ] assert strings.drop( 5 ) == [:]If the map instance does not have ordered keys, then this function could drop a random
num
entries. Groovy by default uses LinkedHashMap, so this shouldn't be an issue in the main.
self
- the original mapnum
- the number of elements to drop from this mapnum
ones, or else the empty map, if this map has
less than num
elements. Drops the given number of elements from the head of this iterator if they are available.
The original iterator is stepped along by num
elements.
def iteratorCompare( Iterator a, List b ) { a.collect { it } == b } def iter = [ 1, 2, 3, 4, 5 ].listIterator() assert iteratorCompare( iter.drop( 0 ), [ 1, 2, 3, 4, 5 ] ) iter = [ 1, 2, 3, 4, 5 ].listIterator() assert iteratorCompare( iter.drop( 2 ), [ 3, 4, 5 ] ) iter = [ 1, 2, 3, 4, 5 ].listIterator() assert iteratorCompare( iter.drop( 5 ), [] )
self
- the original iteratornum
- the number of elements to drop from this iteratornum
elements if they exist.Drops the given number of elements from the tail of this SortedSet.
def strings = [ 'a', 'b', 'c' ] as SortedSet assert strings.dropRight( 0 ) == [ 'a', 'b', 'c' ] as SortedSet assert strings.dropRight( 2 ) == [ 'a' ] as SortedSet assert strings.dropRight( 5 ) == [] as SortedSet
self
- the original SortedSetnum
- the number of elements to drop from this SortedSetnum
elements,
or an empty SortedSet if it has less then num
elements.Drops the given number of elements from the tail of this List.
def strings = [ 'a', 'b', 'c' ] assert strings.dropRight( 0 ) == [ 'a', 'b', 'c' ] assert strings.dropRight( 2 ) == [ 'a' ] assert strings.dropRight( 5 ) == []
self
- the original Listnum
- the number of elements to drop from this Listnum
elements,
or an empty List if it has less then num
elements.Drops the given number of elements from the tail of this Iterable.
def strings = [ 'a', 'b', 'c' ] assert strings.dropRight( 0 ) == [ 'a', 'b', 'c' ] assert strings.dropRight( 2 ) == [ 'a' ] assert strings.dropRight( 5 ) == [] class AbcIterable implements Iterable{ Iterator iterator() { "abc".iterator() } } def abc = new AbcIterable() assert abc.dropRight(0) == ['a', 'b', 'c'] assert abc.dropRight(1) == ['a', 'b'] assert abc.dropRight(3) == [] assert abc.dropRight(5) == []
self
- the original Iterablenum
- the number of elements to drop from this Iterablenum
elements,
or an empty list if it has less then num
elements.Drops the given number of elements from the tail of this Iterator.
def getObliterator() { "obliter8".iterator() } assert obliterator.dropRight(-1).toList() == ['o', 'b', 'l', 'i', 't', 'e', 'r', '8'] assert obliterator.dropRight(0).toList() == ['o', 'b', 'l', 'i', 't', 'e', 'r', '8'] assert obliterator.dropRight(1).toList() == ['o', 'b', 'l', 'i', 't', 'e', 'r'] assert obliterator.dropRight(4).toList() == ['o', 'b', 'l', 'i'] assert obliterator.dropRight(7).toList() == ['o'] assert obliterator.dropRight(8).toList() == [] assert obliterator.dropRight(9).toList() == []
self
- the original Iteratornum
- the number of elements to dropnum
elements,
or an empty Iterator if it has less then num
elements.Drops the given number of elements from the tail of this array if they are available.
String[] strings = [ 'a', 'b', 'c' ] assert strings.dropRight( 0 ) == [ 'a', 'b', 'c' ] as String[] assert strings.dropRight( 2 ) == [ 'a' ] as String[] assert strings.dropRight( 5 ) == [] as String[]
self
- the original arraynum
- the number of elements to drop from this arraynum
ones, or else the empty array, if this
array has less than num
elements.Returns a suffix of this SortedSet where elements are dropped from the front while the given Closure evaluates to true. Similar to dropWhile(Iterable, groovy.lang.Closure) except that it attempts to preserve the type of the original SortedSet.
def nums = [ 1, 2, 3 ] as SortedSet assert nums.dropWhile{ it<
4 } == [] as SortedSet assert nums.dropWhile{ it<
2 } == [ 2, 3 ] as SortedSet assert nums.dropWhile{ it != 3 } == [ 3 ] as SortedSet assert nums.dropWhile{ it == 0 } == [ 1, 2, 3 ] as SortedSet
self
- the original SortedSetcondition
- the closure that must evaluate to true to continue dropping elementsReturns a suffix of this List where elements are dropped from the front while the given Closure evaluates to true. Similar to dropWhile(Iterable, groovy.lang.Closure) except that it attempts to preserve the type of the original list.
def nums = [ 1, 3, 2 ] assert nums.dropWhile{ it<
4 } == [] assert nums.dropWhile{ it<
3 } == [ 3, 2 ] assert nums.dropWhile{ it != 2 } == [ 2 ] assert nums.dropWhile{ it == 0 } == [ 1, 3, 2 ]
self
- the original listcondition
- the closure that must evaluate to true to continue dropping elementsReturns a suffix of this Iterable where elements are dropped from the front while the given closure evaluates to true.
class HorseIterable implements Iterable{ Iterator iterator() { "horse".iterator() } } def horse = new HorseIterable() assert horse.dropWhile{ it <
'r' } == ['r', 's', 'e'] assert horse.dropWhile{ it<=
'r' } == ['s', 'e']
self
- an Iterablecondition
- the closure that must evaluate to true to continue dropping elementsCreate a suffix of the given Map by dropping as many entries as possible from the front of the original Map such that calling the given closure condition evaluates to true when passed each of the dropped entries (or key/value pairs).
def shopping = [milk:1, bread:2, chocolate:3] assert shopping.dropWhile{ it.key.size()If the map instance does not have ordered keys, then this function could appear to drop random entries. Groovy by default uses LinkedHashMap, so this shouldn't be an issue in the main.<
6 } == [chocolate:3] assert shopping.dropWhile{ it.value % 2 } == [bread:2, chocolate:3] assert shopping.dropWhile{ k, v->
k.size() + v<=
7 } == [chocolate:3]
self
- a Mapcondition
- a 1 (or 2) arg Closure that must evaluate to true for the
entry (or key and value) to continue dropping elementsCreate a suffix of the given array by dropping as many elements as possible from the front of the original array such that calling the given closure condition evaluates to true when passed each of the dropped elements.
def nums = [ 1, 3, 2 ] as Integer[] assert nums.dropWhile{ it<=
3 } == [ ] as Integer[] assert nums.dropWhile{ it<
3 } == [ 3, 2 ] as Integer[] assert nums.dropWhile{ it != 2 } == [ 2 ] as Integer[] assert nums.dropWhile{ it == 0 } == [ 1, 3, 2 ] as Integer[]
self
- the original arraycondition
- the closure that must evaluate to true to
continue dropping elementsCreates an Iterator that returns a suffix of the elements from an original Iterator. As many elements as possible are dropped from the front of the original Iterator such that calling the given closure condition evaluates to true when passed each of the dropped elements.
def a = 0 def iter = [ hasNext:{ a<
10 }, next:{ a++ } ] as Iterator assert [].iterator().dropWhile{ it<
3 }.toList() == [] assert [1, 2, 3, 4, 5].iterator().dropWhile{ it<
3 }.toList() == [ 3, 4, 5 ] assert iter.dropWhile{ it<
5 }.toList() == [ 5, 6, 7, 8, 9 ]
self
- the Iteratorcondition
- the closure that must evaluate to true to continue dropping elementsGenerates a detailed dump string of an object showing its class, hashCode and fields.
self
- an objectIterates through an array passing each array entry to the given closure.
String[] letters = ['a', 'b', 'c'] String result = '' letters.each{ result += it } assert result == 'abc'
self
- the array over which we iterateclosure
- the closure applied on each array entryIterates through an aggregate type or data structure, passing each item to the given closure. Custom types may utilize this method by simply providing an "iterator()" method. The items returned from the resulting iterator will be passed to the closure.
String result = '' ['a', 'b', 'c'].each{ result += it } assert result == 'abc'
self
- the object over which we iterateclosure
- the closure applied on each element foundIterates through an Iterable, passing each item to the given closure.
self
- the Iterable over which we iterateclosure
- the closure applied on each element foundIterates through an Iterator, passing each item to the given closure.
self
- the Iterator over which we iterateclosure
- the closure applied on each element foundIterates through a Collection, passing each item to the given closure.
self
- the Collection over which we iterateclosure
- the closure applied on each element foundIterates through a List, passing each item to the given closure.
self
- the List over which we iterateclosure
- the closure applied on each element foundIterates through a Set, passing each item to the given closure.
self
- the Set over which we iterateclosure
- the closure applied on each element foundIterates through a SortedSet, passing each item to the given closure.
self
- the SortedSet over which we iterateclosure
- the closure applied on each element foundAllows a Map to be iterated through using a closure. If the closure takes one parameter then it will be passed the Map.Entry otherwise if the closure takes two parameters then it will be passed the key and the value.
def result = ""
[a:1, b:3].each { key, value ->
result += "$key$value" }
assert result == "a1b3"
def result = ""
[a:1, b:3].each { entry ->
result += entry }
assert result == "a=1b=3"
In general, the order in which the map contents are processed
cannot be guaranteed. In practise, specialized forms of Map,
e.g. a TreeMap will have its contents processed according to
the natural ordering of the map.
self
- the map over which we iterateclosure
- the 1 or 2 arg closure applied on each entry of the mapTraverse through each byte of this Byte array. Alias for each.
self
- a Byte arrayclosure
- a closureTraverse through each byte of this byte array. Alias for each.
self
- a byte arrayclosure
- a closureApplies a function on each combination of the input lists.
Example usage:
[[2, 3],[4, 5, 6]].eachCombination { println "Found $it" }
self
- a Collection of listsfunction
- a closure to be called on each combinationIterates over all permutations of a collection, running a closure for each iteration.
Example usage:
def permutations = [] [1, 2, 3].eachPermutation{ permutations << it } assert permutations == [[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]
self
- the Collection of itemsclosure
- the closure to call for each permutationIterates through an array, passing each array element and the element's index (a counter starting at zero) to the given closure.
String[] letters = ['a', 'b', 'c']
String result = ''
letters.eachWithIndex{ letter, index ->
result += "$index:$letter" }
assert result == '0:a1:b2:c'
self
- an arrayclosure
- a Closure to operate on each array entryIterates through an aggregate type or data structure, passing each item and the item's index (a counter starting at zero) to the given closure.
String result = ''
['a', 'b', 'c'].eachWithIndex{ letter, index ->
result += "$index:$letter" }
assert result == '0:a1:b2:c'
self
- an Objectclosure
- a Closure to operate on each itemIterates through an iterable type, passing each item and the item's index (a counter starting at zero) to the given closure.
self
- an Iterableclosure
- a Closure to operate on each itemIterates through an iterator type, passing each item and the item's index (a counter starting at zero) to the given closure.
self
- an Iteratorclosure
- a Closure to operate on each itemIterates through a Collection, passing each item and the item's index (a counter starting at zero) to the given closure.
self
- a Collectionclosure
- a Closure to operate on each itemIterates through a List, passing each item and the item's index (a counter starting at zero) to the given closure.
self
- a Listclosure
- a Closure to operate on each itemIterates through a Set, passing each item and the item's index (a counter starting at zero) to the given closure.
self
- a Setclosure
- a Closure to operate on each itemIterates through a SortedSet, passing each item and the item's index (a counter starting at zero) to the given closure.
self
- a SortedSetclosure
- a Closure to operate on each itemAllows a Map to be iterated through using a closure. If the closure takes two parameters then it will be passed the Map.Entry and the item's index (a counter starting at zero) otherwise if the closure takes three parameters then it will be passed the key, the value, and the index.
def result = ""
[a:1, b:3].eachWithIndex { key, value, index ->
result += "$index($key$value)" }
assert result == "0(a1)1(b3)"
def result = ""
[a:1, b:3].eachWithIndex { entry, index ->
result += "$index($entry)" }
assert result == "0(a=1)1(b=3)"
self
- the map over which we iterateclosure
- a 2 or 3 arg Closure to operate on each itemCompare the contents of this array to the contents of the given array.
left
- an int arrayright
- the array being compared Determines if the contents of this array are equal to the
contents of the given list, in the same order. This returns
false
if either collection is null
.
left
- an arrayright
- the List being compared Determines if the contents of this list are equal to the
contents of the given array in the same order. This returns
false
if either collection is null
.
assert [1, "a"].equals( [ 1, "a" ] as Object[] )
left
- a Listright
- the Object[] being compared to Compare the contents of two Lists. Order matters.
If numbers exist in the Lists, then they are compared as numbers,
for example 2 == 2L. If both lists are null
, the result
is true; otherwise if either list is null
, the result
is false
.
assert ["a", 2].equals(["a", 2]) assert ![2, "a"].equals("a", 2) assert [2.0, "a"].equals(2L, "a") // number comparison at work
left
- a Listright
- the List being compared totrue
if the contents of both lists are identical,
false
otherwise.Compare the contents of two Sets for equality using Groovy's coercion rules.
Returns true if the two sets have the same size, and every member
of the specified set is contained in this set (or equivalently, every member
of this set is contained in the specified set).
If numbers exist in the sets, then they are compared as numbers,
for example 2 == 2L. If both sets are null
, the result
is true; otherwise if either set is null
, the result
is false
. Example usage:
Set s1 = ["a", 2] def s2 = [2, 'a'] as Set Set s3 = [3, 'a'] def s4 = [2.0, 'a'] as Set def s5 = [2L, 'a'] as Set assert s1.equals(s2) assert !s1.equals(s3) assert s1.equals(s4) assert s1.equals(s5)
self
- a Setother
- the Set being compared toCompares two Maps treating coerced numerical values as identical.
Example usage:
assert [a:2, b:3] == [a:2L, b:3.0]
self
- this Mapother
- the Map being compared toCompares this object against the specified object returning the same result as Float.equals but returning true if this object and the specified object are both zero and negative zero respectively or vice versa.
Compares this object against the specified object returning the same result as Double.equals but returning true if this object and the specified object are both zero and negative zero respectively or vice versa.
Used to determine if the given predicate closure is valid (i.e. returns
true
for all items in this data structure).
A simple example for a list:
def list = [3,4,5]
def greaterThanTwo = list.every { it >
2 }
self
- the object over which we iteratepredicate
- the closure predicate used for matching Used to determine if the given predicate closure is valid (i.e. returns
true
for all items in this iterator).
A simple example for a list:
def list = [3,4,5]
def greaterThanTwo = list.iterator().every { it >
2 }
self
- the iterator over which we iteratepredicate
- the closure predicate used for matching Used to determine if the given predicate closure is valid (i.e. returns
true
for all items in this Array).
self
- an Arraypredicate
- the closure predicate used for matching Used to determine if the given predicate closure is valid (i.e. returns
true
for all items in this iterable).
A simple example for a list:
def list = [3,4,5]
def greaterThanTwo = list.every { it >
2 }
self
- the iterable over which we iteratepredicate
- the closure predicate used for matchingIterates over the entries of a map, and checks whether a predicate is valid for all entries. If the closure takes one parameter then it will be passed the Map.Entry otherwise if the closure takes two parameters then it will be passed the key and the value.
def map = [a:1, b:2.0, c:2L] assert !map.every { key, value->
value instanceof Integer } assert map.every { entry->
entry.value instanceof Number }
self
- the map over which we iteratepredicate
- the 1 or 2 arg Closure predicate used for matching Iterates over every element of a collection, and checks whether all
elements are true
according to the Groovy Truth.
Equivalent to self.every({element
->
element})
assert [true, true].every() assert [1, 1].every() assert ![1, 0].every()
self
- the object over which we iterateFinds the first value matching the closure condition.
def numbers = [1, 2, 3]
def result = numbers.find { it >
1}
assert result == 2
self
- an Object with an iterator returning its valuesclosure
- a closure conditionFinds the first item matching the IDENTITY Closure (i.e. matching Groovy truth).
Example:
def items = [null, 0, 0.0, false, '', [], 42, 43] assert items.find() == 42
self
- an Object with an Iterator returning its valuesFinds the first value matching the closure condition. Example:
def list = [1,2,3]
assert 2 == list.find { it >
1 }
self
- a Collectionclosure
- a closure conditionFinds the first element in the array that matches the given closure condition. Example:
def list = [1,2,3] as Integer[] assert 2 == list.find { it>
1 } assert null == list.find { it>
5 }
self
- an Arraycondition
- a closure conditionFinds the first item matching the IDENTITY Closure (i.e. matching Groovy truth).
Example:
def items = [null, 0, 0.0, false, '', [], 42, 43] assert items.find() == 42
self
- a CollectionFinds the first entry matching the closure condition. If the closure takes two parameters, the entry key and value are passed. If the closure takes one parameter, the Map.Entry object is passed.
assert [a:1, b:3].find { it.value == 3 }.key == "b"
self
- a Mapclosure
- a 1 or 2 arg Closure conditionFinds all values matching the closure condition.
assert ([2,4] as Set) == ([1,2,3,4] as Set).findAll { it % 2 == 0 }
self
- a Setclosure
- a closure conditionFinds all values matching the closure condition.
assert [2,4] == [1,2,3,4].findAll { it % 2 == 0 }
self
- a Listclosure
- a closure conditionFinds all values matching the closure condition.
assert [2,4] == [1,2,3,4].findAll { it % 2 == 0 }
self
- a Collectionclosure
- a closure conditionFinds all elements of the array matching the given Closure condition.
def items = [1,2,3,4] as Integer[] assert [2,4] == items.findAll { it % 2 == 0 }
self
- an arraycondition
- a closure conditionFinds the items matching the IDENTITY Closure (i.e. matching Groovy truth).
Example:
def items = [1, 2, 0, false, true, '', 'foo', [], [4, 5], null] as Set assert items.findAll() == [1, 2, true, 'foo', [4, 5]] as Set
self
- a SetFinds the items matching the IDENTITY Closure (i.e. matching Groovy truth).
Example:
def items = [1, 2, 0, false, true, '', 'foo', [], [4, 5], null] assert items.findAll() == [1, 2, true, 'foo', [4, 5]]
self
- a ListFinds the items matching the IDENTITY Closure (i.e. matching Groovy truth).
Example:
def items = [1, 2, 0, false, true, '', 'foo', [], [4, 5], null] assert items.findAll() == [1, 2, true, 'foo', [4, 5]]
self
- a CollectionFinds the elements of the array matching the IDENTITY Closure (i.e. matching Groovy truth).
Example:
def items = [1, 2, 0, false, true, '', 'foo', [], [4, 5], null] as Object[] assert items.findAll() == [1, 2, true, 'foo', [4, 5]]
self
- an arrayFinds all items matching the closure condition.
self
- an Object with an Iterator returning its valuesclosure
- a closure conditionFinds all items matching the IDENTITY Closure (i.e. matching Groovy truth).
Example:
def items = [1, 2, 0, false, tru