Konvertieren Sie eine Map in ein Array, eine Liste oder einen Satz in Java

1. Übersicht

Dieser kurze Artikel zeigt, wie die Werte einer Map mit einfachem Java in ein Array, eine Liste oder einen Satz konvertiert werden , sowie ein kurzes Beispiel auf Guava-Basis.

Dieser Artikel ist Teil der Reihe „Java - Back to Basic“ hier auf Baeldung.

2. Ordnen Sie die Werte dem Array zu

Schauen wir uns zunächst die Konvertierung der Map-Werte in ein Array mit einfachem Java an :

@Test public void givenUsingCoreJava_whenMapValuesConvertedToArray_thenCorrect() { Map sourceMap = createMap(); Collection values = sourceMap.values(); String[] targetArray = values.toArray(new String[0]); }

Beachten Sie, dass toArray (neues T [0]) die bevorzugte Methode ist, um die Methode gegenüber toArray (neues T [Größe]) zu verwenden . Wie Aleksey Shipilëv in seinem Blogbeitrag beweist, scheint es schneller, sicherer und sauberer zu sein.

3. Ordnen Sie die Werte der Liste zu

Als nächstes konvertieren wir die Werte einer Map in eine Liste - mit einfachem Java:

@Test public void givenUsingCoreJava_whenMapValuesConvertedToList_thenCorrect() { Map sourceMap = createMap(); List targetList = new ArrayList(sourceMap.values()); }

Und mit Guave:

@Test public void givenUsingGuava_whenMapValuesConvertedToList_thenCorrect() { Map sourceMap = createMap(); List targetList = Lists.newArrayList(sourceMap.values()); }

4. Zugeordnete Werte zuordnen

Zum Schluss konvertieren wir die Werte der Karte mit einfachem Java in ein Set:

@Test public void givenUsingCoreJava_whenMapValuesConvertedToS_thenCorrect() { Map sourceMap = createMap(); Set targetSet = new HashSet(sourceMap.values()); }

5. Schlussfolgerung

Wie Sie sehen, können alle Konvertierungen mit einer einzigen Zeile durchgeführt werden, wobei nur die Java-Standardsammlungsbibliothek verwendet wird.

Die Implementierung all dieser Beispiele und Codefragmente finden Sie im GitHub-Projekt. Dies ist ein Maven-basiertes Projekt, daher sollte es einfach zu importieren und auszuführen sein.