Como criar a ArrayList de Array em Java

Payel Ganguly 12 outubro 2023
  1. O que é um ArrayList em Java?
  2. O que é ArrayList em Java?
  3. Diferença entre Array e ArrayList em Java
  4. Conversão de um array para ArrayList utilizando Arrays.asList()
  5. Conversão de um Array para ArrayList utilizando Collections.asList()
  6. Conversão de um Array para ArrayList usando add()
Como criar a ArrayList de Array em Java

Este artigo tutorial apresentará diferentes maneiras de criar a ArrayList a partir do ArrayList em Java. Existem três métodos diferentes para converter um array para ArrayList em Java, tais como Arrays.asList(), Collections.addAll() e add().

Antes de prosseguir com a demonstração, vamos entender o que é um array e ArrayList e como eles diferem um do outro.

O que é um ArrayList em Java?

Um array é uma coleção de um número fixo de tipos de dados similares. Por exemplo, se quisermos armazenar os dados de 50 livros, podemos criar um array do tipo string que pode conter 50 livros. Após a criação, o comprimento do array é fixo. Um array é a funcionalidade básica embutida do Java.

String[] array = new String[50];

O que é ArrayList em Java?

A ArrayList é um array redimensionável que armazena uma coleção dinâmica de elementos encontrados dentro do pacote java.util.

Diferença entre Array e ArrayList em Java

A principal diferença entre uma array e ArrayList é que o comprimento de uma array não pode ser modificado ou estendido. Para adicionar ou remover elementos para/de um array, temos que criar uma nova lista. Já os elementos podem ser adicionados ou removidos de/para a ArrayList em qualquer ponto devido a sua natureza redimensionável.

Conversão de um array para ArrayList utilizando Arrays.asList()

Utilizando Arrays.asList(), o array é passado para este método e um objeto list é obtido, que é novamente passado para o construtor da classe ArrayList como um parâmetro. A sintaxe do Arrays.asList() é a seguinte:

ArrayList<T> arraylist = new ArrayList<T>(Arrays.asList(arrayname));

Vamos seguir o exemplo abaixo.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class Method1 {
  public static void main(String[] args) {
    String[] subjects = {"maths", "english", "history", "physics"};
    ArrayList<String> sublist = new ArrayList<String>(Arrays.asList(subjects));
    sublist.add("geography");
    sublist.add("chemistry");

    for (String str : sublist) {
      System.out.println(str);
    }
  }
}

Resultado:

maths
english
history
physics
geography
chemistry

Conversão de um Array para ArrayList utilizando Collections.asList()

Este método lista todos os elementos da array em uma coleção definida quase similar a Arrays.asList(). Entretanto, Collections.addAll() é muito mais rápido em comparação ao método Arrays.asList() com base no desempenho. A sintaxe de Collections.addAll() é a seguinte:

Collections.addAll(arraylist, new Element(1), new Element(2), new Element(3), new Element(4));

Vamos entender o exemplo abaixo.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class Method2 {
  public static void main(String[] args) {
    String[] names = {"john", "emma", "rick", "tim"};
    ArrayList<String> namelist = new ArrayList<String>();
    Collections.addAll(namelist, names);
    namelist.add("jenny");
    namelist.add("rob");

    for (String str : namelist) {
      System.out.println(str);
    }
  }
}

Resultado:

john emma rick tim jenny rob

Conversão de um Array para ArrayList usando add()

Usando este método, podemos criar uma nova lista e adicionar os elementos da lista de uma maneira muito mais simples. A sintaxe para o método add() é a seguinte:

arraylist.add(element);

Vamos ver o exemplo abaixo.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class Method3 {
  public static void main(String[] args) {
    ArrayList<String> planetlist = new ArrayList<String>();
    String[] planets = {"earth", "mars", "venus", "jupiter"};
    for (int i = 0; i < planets.length; i++) {
      planetlist.add(planets[i]);
    }
    for (String str : planetlist) {
      System.out.println(str);
    }
  }
}

Resultado:

earth
mars
venus
jupiter

Seguindo os métodos acima, podemos agora converter facilmente um array para ArrayList.

Artigo relacionado - Java Array

Artigo relacionado - Java ArrayList