Heim >Java >javaLernprogramm >Wie konvertiere ich ein „int[]' in ein „Integer[]' für Map Keys in Java?
So konvertieren Sie int[] in Integer[] für Kartenschlüssel
Bei der Arbeit mit Sammlungen und Karten in Java ist es wichtig, dies zu tun sind sich der Einschränkungen primitiver Datentypen bewusst. In bestimmten Situationen, beispielsweise wenn Sie ein Array von Ganzzahlen als Schlüssel in einer Map speichern müssen, können primitive int[]-Arrays nicht direkt verwendet werden, da Map-Schlüssel Objekte sein müssen. Hier ist die Konvertierung von int[] in Integer[] praktisch.
In Ihrem speziellen Fall haben Sie einen großen Datensatz von int[]-Arrays und möchten eine Map
Java 8 (One Line)
Java 8 bietet eine einfache Methode zum Konvertieren von int[] in Integer[] mithilfe von Streams:
<code class="java">int[] data = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // To boxed array Integer[] boxedData = Arrays.stream(data).boxed().toArray(Integer[]::new);</code>
Kollektoren verwenden
Alternativ können Sie Kollektoren verwenden, um int[] in eine Liste
<code class="java">int[] data = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // To boxed list List<Integer> boxedList = Arrays.stream(data).boxed().collect(Collectors.toList()); // To boxed array Integer[] boxedData = boxedList.toArray(new Integer[boxedList.size()]);</code>
Hinweis:
Während es möglich ist, int[] in Integer[] zur Verwendung als Zuordnungsschlüssel umzuwandeln, ist es wichtig, Folgendes zu berücksichtigen Nachteile der Verwendung von Arrays als Schlüssel. Dazu gehören:
In den meisten Fällen wird empfohlen, ein benutzerdefiniertes Objekt oder eine Wrapper-Klasse als Zuordnungsschlüssel anstelle eines Arrays zu verwenden.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich ein „int[]' in ein „Integer[]' für Map Keys in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!