Converter Int Array em Arraylist em Java

Rupam Yadav 12 outubro 2023
  1. Converter um Array int em ArrayList usando Java 8 Stream
  2. Converter um Array int em um ArrayList usando um loop for aprimorado em Java
  3. Converter um array int em uma lista de objetos inteiros usando Guava
Converter Int Array em Arraylist em Java

Este tutorial apresenta como podemos converter um array de int primitivo em um ArrayList em Java. Não podemos criar um ArrayList de tipos de dados primitivos para que possamos usar o objeto Integer.

Converter um Array int em ArrayList usando Java 8 Stream

Este exemplo usa a API Stream da classe Arrays que fornece vários métodos para manipular um array. Para que isso funcione, primeiro criamos um array de elementos int e usamos a classe Arrays para chamar o método stream(). Mas como os itens de intArray são de tipos primitivos, temos que usar o boxed() para encaixotar cada primitivo em um objeto Integer.

O método collect() coleta os itens e Collectors.toList() os converte em uma lista. Podemos lançar a lista retornada em ArrayList<Integer>.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.stream.Collectors;

public class IntToInteger {
  public static void main(String[] args) {
    int[] intArray = {10, 20, 30, 40};

    ArrayList<Integer> integerArray =
        (ArrayList<Integer>) Arrays.stream(intArray).boxed().collect(Collectors.toList());

    System.out.println(integerArray);
  }
}

Resultado:

[10, 20, 30, 40]

Converter um Array int em um ArrayList usando um loop for aprimorado em Java

Podemos usar o método manual para adicionar cada item do array ao ArrayList. Este método não usa nenhuma função e, em vez disso, um loop for aprimorado é suficiente para que isso funcione. Criamos um array intArray com alguns elementos do tipo int e um ArrayList vazio com o tamanho inicial igual ao tamanho de intArray.

Agora, como o ArrayList tem precisamente a capacidade de conter os elementos de intArray, podemos usar o loop for aprimorado e chamar o método add() que adiciona um item ao ArrayList. O loop for irá iterar através do array, e cada item será adicionado ao ArrayList.

Podemos ver na saída que obtemos os mesmos elementos que intArray.

import java.util.ArrayList;

public class IntToInteger {
  public static void main(String[] args) {
    int[] intArray = {13, 17, 21, 23};

    ArrayList<Integer> integerArray = new ArrayList<>(intArray.length);

    for (int i : intArray) {
      integerArray.add(i);
    }

    System.out.println(integerArray);
  }
}

Resultado:

[13, 17, 21, 23]

Converter um array int em uma lista de objetos inteiros usando Guava

Neste exemplo, usamos a classe Ints incluída na biblioteca Guava. Para usar as funções da biblioteca, incluímos sua dependência maven no projeto.

<dependency>
   <groupId>com.google.guava</groupId>
   <artifactId>guava</artifactId>
   <version>23.5-jre</version> 
</dependency>

intArray é um array com elementos do tipo int. Usamos a classe Ints para chamar asList()e passar o array como seu argumento. Ints.asList(intArray) retorna uma lista de objetos Integer.

import com.google.common.primitives.Ints;
import java.util.List;

public class IntToInteger {
  public static void main(String[] args) {
    int[] intArray = {13, 17, 21, 23};

    List<Integer> integerArray = Ints.asList(intArray);

    System.out.println(integerArray);
  }
}

Resultado:

[13, 17, 21, 23]
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artigo relacionado - Java Array

Artigo relacionado - Java ArrayList