Converti Int Array in Arraylist in Java

Rupam Yadav 12 ottobre 2023
  1. Converti un array int in ArrayList utilizzando Java 8 Stream
  2. Converti un array int in un ArrayList utilizzando un cicli for migliorato in Java
  3. Converti un array int in una lista di oggetti interi usando Guava
Converti Int Array in Arraylist in Java

Questo tutorial introduce come possiamo convertire un array di int primitivo in un ArrayList in Java. Non possiamo creare un ArrayList di tipi di dati primitivi, quindi useremo da utilizzare l’oggetto Integer.

Converti un array int in ArrayList utilizzando Java 8 Stream

Questo esempio utilizza l’API Stream della classe Arrays che fornisce diversi metodi per manipolare un array. Perché funzioni, creiamo prima un array di elementi int e usiamo la classe Arrays per chiamare il metodo stream(). Ma poiché gli elementi di intArray sono di tipi primitivi, dobbiamo usare boxed() per inscatolare ogni primitiva in un oggetto Integer.

Il metodo collect() raccoglie gli elementi e Collectors.toList() li converte in una lista. Possiamo eseguire il cast della lista restituita a 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);
  }
}

Produzione:

[10, 20, 30, 40]

Converti un array int in un ArrayList utilizzando un cicli for migliorato in Java

Possiamo usare il metodo manuale per aggiungere ogni elemento dell’array all’ArrayList. Questo metodo non utilizza alcuna funzione, e invece, un cicli for migliorato è sufficiente perché funzioni. Creiamo un array intArray con pochi elementi di tipo int e un ArrayList vuoto con la dimensione iniziale uguale alla dimensione di intArray.

Ora, poiché ArrayList ha precisamente la capacità di contenere gli elementi di intArray, possiamo usare il cicli for potenziato e chiamare il metodo add() che aggiunge un elemento nell’ArrayList. Il cicli for itererà attraverso l’array e ogni elemento verrà aggiunto all’ArrayList.

Possiamo vedere nell’output che otteniamo gli stessi elementi di 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);
  }
}

Produzione:

[13, 17, 21, 23]

Converti un array int in una lista di oggetti interi usando Guava

In questo esempio, usiamo la classe Ints inclusa nella libreria Guava. Per utilizzare le funzioni di libreria, includiamo la sua dipendenza Maven dal progetto.

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

intArray è un array con elementi del tipo int. Usiamo la classe Ints per chiamare asList() e passare l’array come argomento. Ints.asList(intArray) restituisce una lista di oggetti 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);
  }
}

Produzione:

[13, 17, 21, 23]
Autore: Rupam Yadav
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

Articolo correlato - Java Array

Articolo correlato - Java ArrayList