Inicializar ArrayList en Java

Hassan Saeed 12 octubre 2023
  1. Usa Arrays.asList para inicializar una ArrayList en Java
  2. Usa new ArrayList() Inicialice una ArrayList en Java
  3. Use List.of() para inicializar una ArrayList en Java
  4. Use Stream para inicializar una ArrayList en Java
Inicializar ArrayList en Java

Este tutorial discute los métodos para inicializar una ArrayList con valores en una línea en Java. Es útil para probar y para la codificación minimalista.

Usa Arrays.asList para inicializar una ArrayList en Java

Es relativamente más fácil inicializar una lista en lugar de una ArrayList en Java con valores iniciales en una línea. Sin embargo, si es necesario, se puede convertir en una ArrayList. El siguiente ejemplo ilustra ambas formas.

import java.util.*;

public class Main {
  public static void main(String[] args) {
    // Initialize a list
    List<String> cities = Arrays.asList("Amsterdam", "Paris", "London");

    // Initialize an ArrayList
    ArrayList<String> cities_AL = new ArrayList<>(Arrays.asList("Amsterdam", "Paris", "London"));

    System.out.println(cities);
    System.out.println(cities_AL);
  }
}

Resultado:

[Amsterdam, Paris, London]
[Amsterdam, Paris, London]

La única diferencia entre las cities y cities_AL es que una es una List y la otra es una ArrayList.

Usa new ArrayList() Inicialice una ArrayList en Java

Otro método para inicializar una ArrayList es usar la función new ArrayList(). Puedes preasignar todos los valores en una sola línea de código.

import java.util.*;

public class Main {
  public static void main(String[] args) {
    // Pre assign the values
    ArrayList<String> cities = new ArrayList<String>() {
      {
        add("Amsterdam");
        add("Paris");
        add("London");
      }
    };

    System.out.println(cities);
  }
}

Resultado:

[Amsterdam, Paris, London]

Use List.of() para inicializar una ArrayList en Java

En Java9 o posterior, podemos usar el método List.of() en lugar de Arrays.asList() para inicializar una ArrayList en Java. El siguiente ejemplo ilustra esto.

import java.util.*;

public class Main {
  public static void main(String[] args) {
    // Initialize a List
    List<String> strings = List.of("foo", "bar", "baz");
    System.out.println(strings);

    // Initialize an ArrayList
    ArrayList<String> strings_a = new ArrayList<>(List.of("foo", "bar", "baz"));
    System.out.println(strings_a);
  }
}

Resultado:

[foo, bar, baz]
[foo, bar, baz]

Use Stream para inicializar una ArrayList en Java

También podemos usar Stream para inicializar una ArrayList en Java. El siguiente ejemplo ilustra esto.

import java.util.*;
import java.util.stream.*;
public class Main {
  public static void main(String[] args) {
    ArrayList<String> places = new ArrayList<>(
        Stream.of("Buenos Aires", "Córdoba", "La Plata").collect(Collectors.toList()));

    System.out.println(places);
  }
}

Resultado:

[Buenos Aires, Córdoba, La Plata]

Hemos discutido varias formas de inicializar una ArrayList en Java en una sola línea con preasignación de valores en este artículo.

Artículo relacionado - Java ArrayList