Konverter et kart til en matrise, liste eller sett i Java
1. Oversikt
Denne korte artikkelen viser hvordan du gjør det konvertere verdiene til en Kart til en Array, en Liste eller a Sett ved hjelp av vanlig Java, så vel som et raskt Guava-basert eksempel.
Denne artikkelen er en del av "Java - Back to Basic" -serien her på Baeldung.
2. Kartverdier til matrise
La oss først se på å konvertere verdiene til kartet til en matrise, bruker vanlig java:
@Test offentlig ugyldighet givenUsingCoreJava_whenMapValuesConvertedToArray_thenCorrect () {Map sourceMap = createMap (); Samlingsverdier = sourceMap.values (); Streng [] targetArray = values.toArray (ny streng [0]); }
Noter det toArray (ny T [0]) er den foretrukne måten å bruke metoden på toArray (ny T [størrelse]). Som Aleksey Shipilëv viser i blogginnlegget, virker det raskere, tryggere og renere.
3. Kartverdier til liste
La oss deretter konvertere verdiene til et kart til en liste - ved hjelp av vanlig Java:
@Test offentlig ugyldighet givenUsingCoreJava_whenMapValuesConvertedToList_thenCorrect () {Map sourceMap = createMap (); Liste targetList = ny ArrayList (sourceMap.values ()); }
Og ved hjelp av Guava:
@Test offentlig ugyldighet givenUsingGuava_whenMapValuesConvertedToList_thenCorrect () {Map sourceMap = createMap (); Liste targetList = Lists.newArrayList (sourceMap.values ()); }
4. Kartverdier å angi
Til slutt, la oss konvertere verdiene til kartet til et sett ved hjelp av vanlig java:
@Test offentlig ugyldighet givenUsingCoreJava_whenMapValuesConvertedToS_thenCorrect () {Map sourceMap = createMap (); Sett targetSet = nytt HashSet (sourceMap.values ()); }
5. Konklusjon
Som du kan se, kan alle konverteringer gjøres med en enkelt linje, bare ved hjelp av Java-standardsamlingsbiblioteket.
Implementeringen av alle disse eksemplene og kodebiter kan bli funnet på GitHub-prosjektet - dette er et Maven-basert prosjekt, så det skal være enkelt å importere og kjøre som det er.