Wie man Ganzzahlliste in Int-Array in Java konvertiert

Rupam Yadav 12 Oktober 2023
  1. Stream().mapToInt() zur Konvertierung von Integer-Liste in Int-Array in Java
  2. ArrayUtils.toPrimitive() zur Konvertierung von Integer-Listen in Int-Arrays in Java
  3. Guava-Methode zur Konvertierung von Integer-Liste in Int-Array in Java
Wie man Ganzzahlliste in Int-Array in Java konvertiert

In diesem Tutorial stellen wir vor, wie wir eine Liste<Ganzzahl> in Java in int[] konvertieren können. Wir können sehen, dass beide von unterschiedlichen Datentypen sind, nämlich ArrayList of Integers und das Array von int. Ersteres enthält einen Objektdatentyp, d.h. Integer, und letzteres ist ein primitiver Datentyp, d.h. int.

Stream().mapToInt() zur Konvertierung von Integer-Liste in Int-Array in Java

Stream wird in Java 8 mit dem Paket java.util.stream eingeführt. Es kann uns helfen, die gewünschten Ergebnisse zu erhalten, da es eine Methode mapToInt() enthält, die einen IntStream (eine Sequenz primitiver int Werte) zurückgibt.

Um es deutlicher zu machen, lassen Sie es uns im Beispiel unten sehen.

import java.util.ArrayList;
import java.util.List;

public class Main {
  public static void main(String[] args) {
    List<Integer> numList = new ArrayList<Integer>();
    numList.add(11);
    numList.add(22);
    numList.add(33);
    numList.add(44);
    numList.add(55);

    int[] numArray = numList.stream().mapToInt(i -> i).toArray();

    for (int intValue : numArray) {
      System.out.println(intValue);
    }
  }
}

Ausgabe:

int primitive: 11
int primitive: 22
int primitive: 33
int primitive: 44
int primitive: 55

Wir können den Datentyp von numArray durch Debugging doppelt überprüfen. Die untenstehende Debug-Ausgabe zeigt, daß die numList eine ArrayList ist, während numArray ein primitiver int ist.

numList = {ArrayList @832} size = 5 numArray = {int[5] @833} intValue = 11

ArrayUtils.toPrimitive() zur Konvertierung von Integer-Listen in Int-Arrays in Java

Wir haben eine andere Möglichkeit, einen List<Integer> in einen int[] Typ zu gießen. Wir werden Apache Common Lang verwenden, das eine Reihe von Hilfsmethoden ist.

Mit ArrayUtils.toPrimitive() können wir unsere numList übergeben, die uns das Ergebnis im Datentyp int[] liefert.

import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.ArrayUtils;

public class Main {
  public static void main(String[] args) {
    List<Integer> numList = new ArrayList<Integer>();
    numList.add(110);
    numList.add(220);
    numList.add(330);
    numList.add(440);
    numList.add(550);

    int[] intArray = ArrayUtils.toPrimitive(numList.toArray(new Integer[numList.size()]));
    for (int intValue : intArray) {
      System.out.println("int primitive: " + intValue);
    }
  }
}

Ausgabe:

int primitive: 110
int primitive: 220
int primitive: 330
int primitive: 440
int primitive: 550

Guava-Methode zur Konvertierung von Integer-Liste in Int-Array in Java

Guava ist eine Bibliothek, die uns helfen kann, unsere Liste von Ganzzahlen in primitive Werte von int.

Ints.toArray(ListOfIntegers) ist ein Teil des Pakets com.google.common.primitives.Ints, das unsere Liste als Argument nimmt und uns das Array von Ints zur Verfügung stellt.

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

public class Main {
  public static void main(String[] args) {
    List<Integer> numList = new ArrayList<Integer>();
    numList.add(110);
    numList.add(220);
    numList.add(330);
    numList.add(440);
    numList.add(550);

    int[] numArray = Ints.toArray(numList);
    for (int intValue : numArray) {
      System.out.println("int primitive: " + intValue);
    }
  }
}

Ausgabe:

int primitive: 110
int primitive: 220
int primitive: 330
int primitive: 440
int primitive: 550
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 Int

Verwandter Artikel - Java List

Verwandter Artikel - Java Array