Int-Array in Arrayliste umwandeln in Java

Rupam Yadav 12 Oktober 2023
  1. Konvertieren eines int-Arrays in eine ArrayList mit Java 8 Stream
  2. Konvertieren eines int-Arrays in eine ArrayList mit einer erweiterten for-Schleife in Java
  3. Konvertieren eines int-Arrays in eine Liste von Integer-Objekten mit Guava
Int-Array in Arrayliste umwandeln in Java

Dieses Tutorial stellt vor, wie wir ein Array aus primitiven int in eine ArrayList in Java konvertieren können. Wir können keine ArrayList von primitiven Datentypen erstellen, so dass wir das Objekt Integer verwenden werden.

Konvertieren eines int-Arrays in eine ArrayList mit Java 8 Stream

Dieses Beispiel verwendet die Stream-API der Klasse Arrays, die mehrere Methoden zur Manipulation eines Arrays bereitstellt. Damit dies funktioniert, erstellen wir zunächst ein Array mit int-Elementen und verwenden die Klasse Arrays, um die Methode Stream() aufzurufen. Da die Elemente von intArray aber von primitiven Typen sind, müssen wir die Methode boxed() verwenden, um jedes Primitive in ein Integer-Objekt zu boxen.

Die Methode collect() sammelt die Elemente und Collectors.toList() konvertiert sie in eine Liste. Wir können die zurückgegebene Liste in ArrayList<Integer> casten.

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);
  }
}

Ausgabe:

[10, 20, 30, 40]

Konvertieren eines int-Arrays in eine ArrayList mit einer erweiterten for-Schleife in Java

Wir können die manuelle Methode verwenden, um jedes Element des Arrays zu der ArrayList hinzuzufügen. Diese Methode verwendet keine Funktion, stattdessen reicht eine erweiterte for-Schleife, damit dies funktioniert. Wir erstellen ein Array intArray mit ein paar Elementen vom Typ int und eine leere ArrayList mit der Anfangsgröße gleich der Größe von intArray.

Nun, da die ArrayList genau die Kapazität hat, die Elemente von intArray aufzunehmen, können wir die erweiterte for-Schleife verwenden und die Methode add() aufrufen, die ein Element in die ArrayList hinzufügt. Die for-Schleife wird durch das Array iterieren, und jedes Element wird der ArrayList hinzugefügt.

Wir können in der Ausgabe sehen, dass wir die gleichen Elemente wie bei intArray erhalten.

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);
  }
}

Ausgabe:

[13, 17, 21, 23]

Konvertieren eines int-Arrays in eine Liste von Integer-Objekten mit Guava

In diesem Beispiel verwenden wir die Klasse Ints, die in der Bibliothek Guava enthalten ist. Um die Funktionen der Bibliothek zu nutzen, binden wir ihre Maven-Abhängigkeit in das Projekt ein.

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

intArray ist ein Array mit Elementen vom Typ int. Wir verwenden die Klasse Ints, um asList() aufzurufen und das Array als Argument zu übergeben. Ints.asList(intArray) gibt eine Liste von Integer-Objekten zurück.

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);
  }
}

Ausgabe:

[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

Verwandter Artikel - Java Array

Verwandter Artikel - Java ArrayList