Convertir une carte en un tableau, une liste ou un ensemble en Java

1. Vue d'ensemble

Ce court article montrera comment convertir les valeurs d'une carte en un tableau, une liste ou un ensemble à l' aide de Java brut ainsi qu'un exemple rapide basé sur Guava.

Cet article fait partie de la série «Java - Back to Basic» ici sur Baeldung.

2. Mapper les valeurs au tableau

Tout d'abord, examinons la conversion des valeurs de la carte en un tableau, en utilisant java simple :

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

Notez que toArray (new T [0]) est le moyen préféré d'utiliser la méthode sur toArray (new T [size]) . Comme le prouve Aleksey Shipilëv dans son article de blog, cela semble plus rapide, plus sûr et plus propre.

3. Mapper les valeurs à la liste

Ensuite, convertissons les valeurs d'une carte en liste - en utilisant Java pur:

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

Et en utilisant Guava:

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

4. Mappez les valeurs à définir

Enfin, convertissons les valeurs de la carte en un ensemble, en utilisant java simple:

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

5. Conclusion

Comme vous pouvez le voir, toutes les conversions peuvent être effectuées avec une seule ligne, en utilisant uniquement la bibliothèque de collections standard Java.

L'implémentation de tous ces exemples et extraits de code peut être trouvée sur le projet GitHub - il s'agit d'un projet basé sur Maven, il devrait donc être facile à importer et à exécuter tel quel.