VOOZH about

URL: https://www.geeksforgeeks.org/java/java-stream-collectors-tocollection-in-java/

⇱ Java Stream | Collectors toCollection() in Java - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

Java Stream | Collectors toCollection() in Java

Last Updated : 6 Dec, 2018
Collectors toCollection(Supplier<C> collectionFactory) method in Java is used to create a Collection using Collector. It returns a Collector that accumulates the input elements into a new Collection, in the order in which they are passed. Syntax:
public static <T, C extends Collection<T>> Collector<T, ?, C>
 toCollection(Supplier<C> collectionFactory)
where:-
  • Collection : The root interface in the collection hierarchy. A collection represents a group of objects, known as its elements. Some collections allow duplicate elements and others do not. Some are ordered and others unordered.
  • Collector<T, A, R> : A mutable reduction operation that accumulates input elements into a mutable result container, optionally transforming the accumulated result into a final representation after all input elements have been processed. Reduction operations can be performed either sequentially or in parallel.
    • T : The type of input elements to the reduction operation.
    • A : The mutable accumulation type of the reduction operation.
    • R : The result type of the reduction operation.
  • Supplier : A functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
  • collectionFactory : A Supplier which returns a new, empty Collection of the appropriate type.
Parameters: This method takes a mandatory parameter collectionFactory of type Supplier which returns a new, empty Collection of the appropriate type. Return Value: This method returns a collector which collects all the input elements into a Collection, in encounter order. Below given are some examples to illustrate the implementation of toCollection() in a better way: Example 1:
Output:
[Geeks, GeeksClasses, for]
Example 2:
Output:
[2.5, 4, 6]
Comment