|
Groovy JDK |
Method Summary | |
---|---|
Collection
|
asImmutable()
A convenience method for creating an immutable Collection |
List
|
asList()
Converts this collection to a List |
Collection
|
asSynchronized()
A convenience method for creating a synchronized Collection |
Object
|
asType(Class clazz)
Converts the given collection to another type type is used for List, Set, or SortedSet a constructor taking a collection, that is used call is deferred to {link #asType(Object,Class)} collection is already of the given type, the same instance is returned |
List
|
collect(Closure closure)
Iterates through this collection transforming each entry into a new value using the closure as a transformer, returning a list of transformed values |
Collection
|
collect(Collection collection, Closure closure)
Iterates through this collection transforming each value into a new value using the closure as a transformer, returning an initial collection plus the transformed values |
List
|
collectAll(Closure closure)
Recursively iterates through this collection transforming each non-Collection value into a new value using the closure as a transformer list of transformed values |
Collection
|
collectAll(Collection collection, Closure closure)
Recursively iterates through this collection transforming each non-Collection value into a new value using the closure as a transformer collection of transformed values |
List
|
combinations()
Adds GroovyCollections#combinations(Collection) as a method on collections |
int
|
count(Object value)
Counts the number of occurrences of the given value inside this collection Comparison is done using Groovy's == operator (using compareTo(value) == 0 or equals(value) )
|
boolean
|
disjoint(Collection right)
Returns true if the intersection of two collections is empty
|
Object
|
find(Closure closure)
Finds the first value matching the closure condition def list = [1,2,3] list |
Collection
|
findAll(Closure closure)
Finds all values matching the closure condition |
Collection
|
flatten()
Flatten a collection collections have their contents (recursively) added to the new collection WARNING: Any Maps found in the collection are flattened to the Map's values and merged into the flattened collection may change in a future release use flatten(Collection, Closure) with an identity closure |
Collection
|
flatten(Closure flattenUsing)
Flatten a collection collections have their contents (recursively) added to the new collection For any non-Array, non-Collection object which represents some sort of collective type, the supplied closure should yield the contained items; otherwise, the closure should just return any element which corresponds to a leaf |
List
|
getAt(String property)
Support the subscript operator for List |
Map
|
groupBy(Closure closure)
Sorts all collection members into groups determined by the supplied mapping closure item should be grouped by distinct key returned from the closure, with each value being a list of items for that group |
Object
|
inject(Object value, Closure closure)
Iterates through the given collection, passing in the initial value to the closure along with the current iterated item then passing into the next iteration the value of the previous closure |
Collection
|
intersect(Collection right)
Create a Collection composed of the intersection of both collections elements that exist in both collections are added to the resultant collection |
boolean
|
isCase(Object switchValue)
'Case' implementation for collections which tests if the 'switch' operand is contained in any of the 'case' values For example: switch( item ) { case firstList : // item is contained in this list // etc } |
String
|
join(String separator)
Concatenates the toString() representation of each
item in this collection, with the given String as a separator between
each item
|
Collection
|
leftShift(Object value)
Overloads the left shift operator to provide an easy way to append objects to a Collection |
Object
|
max()
Adds max() method to Collection objects |
Object
|
max(Closure closure)
Selects the maximum value found in the collection using the given closure as a comparator number) for each item passed returns the largest comparable value will be returned from this method as the maximum |
Object
|
max(Comparator comparator)
Selects the maximum value found in the collection using the given comparator |
Object
|
min()
Adds min() method to Collection objects |
Object
|
min(Comparator comparator)
Selects the minimum value found in the collection using the given comparator |
Object
|
min(Closure closure)
Selects the minimum value found in the collection using the given closure as a comparator number) for each item passed returns the smallest comparable value will be returned from this method as the minimum |
List
|
multiply(Number factor)
Create a List composed of the elements of this list, repeated a certain number of times elements, multiple references to the same instance will be added |
Collection
|
plus(Collection right)
Create a Collection as a union of two collections is a Set, then the returned collection will be a Set otherwise a List This operation will always create a new object for the result, while the operands remain unchanged |
Collection
|
plus(Object right)
Create a collection as a union of a Collection and an Object is a Set, then the returned collection will be a Set otherwise a List This operation will always create a new object for the result, while the operands remain unchanged |
List
|
sort()
Sorts the given collection into a sorted list assumed to be comparable |
List
|
sort(Comparator comparator)
Sorts the Collection using the given comparator sorted into a new list, and the existing collection is unchanged |
List
|
sort(Closure closure)
Sorts this Collection using the given closure as a comparator closure is passed each item from the collection, and is assumed to return a comparable value (i |
Object
|
sum()
Sums the items in a collection "plus" method on all items in the collection |
Object
|
sum(Object initialValue)
Sums the items in a collection, adding the result to some initial value |
Object
|
sum(Closure closure)
Sums the result of apply a closure to each item of a collection coll
|
Object
|
sum(Object initialValue, Closure closure)
Sums the result of apply a closure to each item of a collection to sum intial value coll
|
List
|
toList()
Convert a collection to a List |
String
|
toListString()
Returns the string representation of the given list displays the contents of the list, similar to a list literal, i [1, 2, a]
|
String
|
toString()
Returns the string representation of the given collection displays the contents of the collection, i [1, 2, a]
|
List
|
transpose()
Adds GroovyCollections#transpose(Collection) as a method on collections |
Collection
|
unique()
Modifies this collection to remove all duplicated items, using the default comparator |
Collection
|
unique(Closure closure)
A convenience method for making a collection unique using a closure as a comparator argument passed will be each element, and the closure should return a value used for comparison (either using {@link Comparable#compareTo(Object)} or Object#equals() ) closure takes two parameters, two items from the collection will be passed as arguments, and the closure should return an int value (with 0 indicating the items are not unique) |
Collection
|
unique(Comparator comparator)
Remove all duplicates from a given Collection Works on the receiver object and returns it The order of members in the Collection are compared by the given Comparator For each duplicate, the first member which is returned by the given Collection's iterator is retained, but all other ones are removed The given Collection's original order is preserved
|
Method Detail |
---|
public Collection asImmutable()
public List asList()
public Collection asSynchronized()
public Object asType(Class clazz)
clazz
- the desired class.
public List collect(Closure closure)
closure
- the closure used for mapping.
public Collection collect(Collection collection, Closure closure)
collection
- an initial Collection to which the transformed values are added.
closure
- the closure used to transform each element of the collection.
public List collectAll(Closure closure)
closure
- the closure used to transform each element of the collection.
public Collection collectAll(Collection collection, Closure closure)
collection
- an initial Collection to which the transformed values are added.
closure
- the closure used to transform each element of the collection.
public List combinations()
public int count(Object value)
compareTo(value) == 0
or equals(value)
).
value
- the value being searched for.
public boolean disjoint(Collection right)
true
if the intersection of two collections is empty.
right
- a Collection.
true
if the intersection of two collections
is empty, false
otherwise.public Object find(Closure closure)
def list = [1,2,3] list.find { it > 1 } // returns 2
closure
- a closure condition.
public Collection findAll(Closure closure)
closure
- a closure condition.
public Collection flatten()
public Collection flatten(Closure flattenUsing)
flattenUsing
- a closure to determine how to flatten non-Array, non-Collection elements.
public List getAt(String property)
property
- a String.
public Map groupBy(Closure closure)
closure
- a closure mapping entries on keys.
public Object inject(Object value, Closure closure)
value
- a value.
closure
- a closure.
public Collection intersect(Collection right)
right
- a Collection.
public boolean isCase(Object switchValue)
switch( item ) { case firstList : // item is contained in this list // etc }
switchValue
- the switch value.
public String join(String separator)
toString()
representation of each
item in this collection, with the given String as a separator between
each item.
separator
- a String separator.
public Collection leftShift(Object value)
value
- an Object to be added to the collection..
public Object max()
public Object max(Closure closure)
closure
- a closure used as a comparator.
public Object max(Comparator comparator)
comparator
- a Comparator.
public Object min()
public Object min(Comparator comparator)
comparator
- a Comparator.
public Object min(Closure closure)
closure
- a closure used as a comparator.
public List multiply(Number factor)
factor
- the number of times to append.
public Collection plus(Collection right)
right
- the right Collection.
public Collection plus(Object right)
right
- an object to add/append.
public List sort()
public List sort(Comparator comparator)
comparator
- a Comparator used for the comparison.
public List sort(Closure closure)
closure
- a Closure used as a comparator.
public Object sum()
public Object sum(Object initialValue)
initialValue
- the items in the collection will be summed to this initial value.
public Object sum(Closure closure)
coll.sum(closure)
is equivalent to:
coll.collect(closure).sum()
.
closure
- a single parameter closure that returns a numeric value..
public Object sum(Object initialValue, Closure closure)
coll.sum(closure)
is equivalent to:
coll.collect(closure).sum()
.
closure
- a single parameter closure that returns a numeric value..
initialValue
- the closure results will be summed to this initial value.
public List toList()
public String toListString()
[1, 2, a]
.
public String toString()
[1, 2, a]
.
public List transpose()
public Collection unique()
public Collection unique(Closure closure)
closure
- a Closure used as a comparator.
public Collection unique(Comparator comparator)
class Person {
def fname, lname
public String toString() {
return fname + " " + lname
}
}
class PersonComparator implements Comparator {
public int compare(Object o1, Object o2) {
Person p1 = (Person) o1
Person p2 = (Person) o2
if (p1.lname != p2.lname)
return p1.lname.compareTo(p2.lname)
else
return p1.fname.compareTo(p2.fname)
}
public boolean equals(Object obj) {
return this.equals(obj)
}
}
Person a = new Person(fname:"John", lname:"Taylor")
Person b = new Person(fname:"Clark", lname:"Taylor")
Person c = new Person(fname:"Tom", lname:"Cruz")
Person d = new Person(fname:"Clark", lname:"Taylor")
def list = [a, b, c, d]
List list2 = list.unique(new PersonComparator())
assert( list2 == list && list == [a, b, c] )
comparator
- a Comparator.
|
Groovy JDK |