Cómo obtener ArrayList de Stream en Java 8

Dado un Stream, la tarea es convertir este Stream en ArrayList en Java 8.

Ejemplos:

Input: Stream: [1, 2, 3, 4, 5]
Output: ArrayList: [1, 2, 3, 4, 5]

Input: Stream: ['G', 'e', 'e', 'k', 's']
Output: ArrayList: ['G', 'e', 'e', 'k', 's']
  1. Usando el método Collectors.toList() :
    1. Obtener la secuencia que se convertirá.
    2. Recopile la secuencia como Lista utilizando los métodos collect() y Collectors.toList().
    3. Convierta esta Lista en una ArrayList
    4. Devolver/Imprimir ArrayList

    A continuación se muestra la implementación del enfoque anterior:

    Programa:

    // Java program to convert Stream to ArrayList
    // using Collectors.toList() method
      
    import java.util.*;
    import java.util.stream.*;
      
    public class GFG {
      
        // Function to get ArrayList from Stream
        public static <T> ArrayList<T>
        getArrayListFromStream(Stream<T> stream)
        {
      
            // Convert the Stream to List
            List<T>
                list = stream.collect(Collectors.toList());
      
            // Create an ArrayList of the List
            ArrayList<T>
                arrayList = new ArrayList<T>(list);
      
            // Return the ArrayList
            return arrayList;
        }
      
        // Driver code
        public static void main(String args[])
        {
      
            Stream<Integer>
                stream = Stream.of(1, 2, 3, 4, 5);
      
            // Convert Stream to ArrayList in Java
            ArrayList<Integer>
                arrayList = getArrayListFromStream(stream);
      
            // Print the arraylist
            System.out.println("ArrayList: " + arrayList);
        }
    }
    Producción:

    ArrayList: [1, 2, 3, 4, 5]
    
  2. Usando el método Collectors.toCollection():
    Enfoque:
    1. Obtener la secuencia que se convertirá.
    2. Recopile la transmisión como ArrayList mediante los métodos collect() y Collectors.toCollection().
    3. Devolver/Imprimir ArrayList

    A continuación se muestra la implementación del enfoque anterior:

    Programa:

    // Java program to convert Stream to ArrayList
    // using Collectors.toList() method
      
    import java.util.*;
    import java.util.stream.*;
      
    public class GFG {
      
        // Function to get ArrayList from Stream
        public static <T> ArrayList<T>
        getArrayListFromStream(Stream<T> stream)
        {
      
            // Convert the Stream to ArrayList
            ArrayList<T>
                arrayList = stream
                                .collect(Collectors
                                .toCollection(ArrayList::new));
      
            // Return the ArrayList
            return arrayList;
        }
      
        // Driver code
        public static void main(String args[])
        {
      
            Stream<Integer>
                stream = Stream.of(1, 2, 3, 4, 5);
      
            // Convert Stream to ArrayList in Java
            ArrayList<Integer>
                arrayList = getArrayListFromStream(stream);
      
            // Print the arraylist
            System.out.println("ArrayList: "
                               + arrayList);
        }
    }
    Producción:

    ArrayList: [1, 2, 3, 4, 5]
    

Publicación traducida automáticamente

Artículo escrito por RishabhPrabhu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *