Package groovy.util

# Class GroovyCollections

java.lang.Object
groovy.util.GroovyCollections

    public class GroovyCollections
    extends Object

A Collections utility class

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `GroovyCollections()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `static List` | `combinations​(Iterable collections)` | Finds all combinations of items from the given Iterable aggregate of collections.
  `static List` | `combinations​(Object[] collections)` | Finds all combinations of items from the given collections.
  `static List` | `combinations​(Collection collections)` | Deprecated. use combinations(Iterable)
  `static <T> List<List<T>>` | `inits​(Iterable<T> collections)` |
  `static <T> T` | `max​(Iterable<T> items)` | Selects the maximum value found in an Iterable.
  `static <T> T` | `max​(Collection<T> items)` | Deprecated. use max(Iterable)
  `static <T> T` | `max​(T[] items)` | Selects the maximum value found in an array of items, so max([2, 4, 6] as Object[]) == 6.
  `static <T> T` | `min​(Iterable<T> items)` | Selects the minimum value found in an Iterable of items.
  `static <T> T` | `min​(Collection<T> items)` | Deprecated. use min(Iterable)
  `static <T> T` | `min​(T[] items)` | Selects the minimum value found in an array of items, so min([2, 4, 6] as Object[]) == 2.
  `static <T> Set<List<T>>` | `subsequences​(List<T> items)` | Finds all non-null subsequences of a list.
  `static Object` | `sum​(Iterable<?> items)` | Sums all the given items.
  `static Object` | `sum​(Object[] items)` | Sums all the items from an array of items.
  `static Object` | `sum​(Collection items)` | Deprecated. use sum(Iterable)
  `static <T> List<List<T>>` | `tails​(Iterable<T> collections)` |
  `static List` | `transpose​(Object[] lists)` | Transposes an array of lists.
  `static List` | `transpose​(List lists)` | Transposes the given lists.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### GroovyCollections

    public GroovyCollections()

- ## Method Details

  - ### combinations

    public static List combinations​(Object[] collections)
    Finds all combinations of items from the given collections.
    Parameters:
      `collections` - the given collections
    Returns:
      a List of the combinations found
    See Also:
      `combinations(Collection)`

  - ### subsequences

    public static <T> Set<List<T>> subsequences​(List<T> items)
    Finds all non-null subsequences of a list. E.g. `subsequences([1, 2, 3])` would be: [[1, 2, 3], [1, 3], [2, 3], [1, 2], [1], [2], [3]]
    Parameters:
      `items` - the List of items
    Returns:
      the subsequences from items

  - ### combinations

    @Deprecated public static List combinations​(Collection collections)
    Deprecated.
    use combinations(Iterable)
    Parameters:
      `collections` - the given collections

  - ### combinations

    public static List combinations​(Iterable collections)
    Finds all combinations of items from the given Iterable aggregate of collections. So, `combinations([[true, false], [true, false]])` is `[[true, true], [false, true], [true, false], [false, false]]` and `combinations([['a', 'b'],[1, 2, 3]])` is `[['a', 1], ['b', 1], ['a', 2], ['b', 2], ['a', 3], ['b', 3]]`. If a non-collection item is given, it is treated as a singleton collection, i.e. `combinations([[1, 2], 'x'])` is `[[1, 'x'], [2, 'x']]`. If an empty collection is found within the given collections, the result will be an empty list.
    Parameters:
      `collections` - the Iterable of given collections
    Returns:
      a List of the combinations found
    Since:
      2.2.0

  - ### inits

    public static <T> List<List<T>> inits​(Iterable<T> collections)

  - ### tails

    public static <T> List<List<T>> tails​(Iterable<T> collections)

  - ### transpose

    public static List transpose​(Object[] lists)
    Transposes an array of lists.
    Parameters:
      `lists` - the given lists
    Returns:
      a List of the transposed lists
    See Also:
      `transpose(List)`

  - ### transpose

    public static List transpose​(List lists)
    Transposes the given lists. So, `transpose([['a', 'b'], [1, 2]])` is `[['a', 1], ['b', 2]]` and `transpose([['a', 'b', 'c']])` is `[['a'], ['b'], ['c']]`.
    Parameters:
      `lists` - the given lists
    Returns:
      a List of the transposed lists

  - ### min

    public static <T> T min​(T[] items)
    Selects the minimum value found in an array of items, so min([2, 4, 6] as Object[]) == 2.
    Parameters:
      `items` - an array of items
    Returns:
      the minimum value

  - ### min

    @Deprecated public static <T> T min​(Collection<T> items)
    Deprecated.
    use min(Iterable)

  - ### min

    public static <T> T min​(Iterable<T> items)
    Selects the minimum value found in an Iterable of items.
    Parameters:
      `items` - an Iterable
    Returns:
      the minimum value
    Since:
      2.2.0

  - ### max

    public static <T> T max​(T[] items)
    Selects the maximum value found in an array of items, so max([2, 4, 6] as Object[]) == 6.
    Parameters:
      `items` - an array of items
    Returns:
      the maximum value

  - ### max

    @Deprecated public static <T> T max​(Collection<T> items)
    Deprecated.
    use max(Iterable)

  - ### max

    public static <T> T max​(Iterable<T> items)
    Selects the maximum value found in an Iterable.
    Parameters:
      `items` - a Collection
    Returns:
      the maximum value
    Since:
      2.2.0

  - ### sum

    public static Object sum​(Object[] items)
    Sums all the items from an array of items.
    Parameters:
      `items` - an array of items
    Returns:
      the sum of the items

  - ### sum

    @Deprecated public static Object sum​(Collection items)
    Deprecated.
    use sum(Iterable)

  - ### sum

    public static Object sum​(Iterable<?> items)
    Sums all the given items.
    Parameters:
      `items` - an Iterable of items
    Returns:
      the sum of the item
    Since:
      2.2.0