Ebben a programban megtanul különböző technikákat a térkép konvertálásához Java-listává.
A példa megértéséhez ismernie kell a következő Java programozási témákat:
- Java Map Interface
- Java HashMap
- Java lista
- Java ArrayList osztály
1. példa: Térkép konvertálása listára
import java.util.*; public class MapList ( public static void main(String() args) ( Map map = new HashMap(); map.put(1, "a"); map.put(2, "b"); map.put(3, "c"); map.put(4, "d"); map.put(5, "e"); List keyList = new ArrayList(map.keySet()); List valueList = new ArrayList(map.values()); System.out.println("Key List: " + keyList); System.out.println("Value List: " + valueList); ) )
Kimenet
Kulcslista: (1, 2, 3, 4, 5) Értéklista: (a, b, c, d, e)
A fenti programban van egy Integer és String nevű térkép. Mivel a térkép tartalmaz kulcsot, értékpárt, mindkettő tárolásához két listára van szükségünk, nevezetesen a keyList a kulcsokhoz és az valueList az értékekhez.
A map keySet()
módszerét használtuk az összes kulcs megszerzéséhez, és létrehoztunk ArrayList
belőlük egy keyList-et. Hasonlóképpen, a térkép values()
módszerét használtuk az összes érték ArrayList
lekérésére, és létrehoztunk belőlük egy valueList-et.
2. példa: A térkép konvertálása listára adatfolyam segítségével
import java.util.*; import java.util.stream.Collectors; public class MapList ( public static void main(String() args) ( Map map = new HashMap(); map.put(1, "a"); map.put(2, "b"); map.put(3, "c"); map.put(4, "d"); map.put(5, "e"); List keyList = map.keySet().stream().collect(Collectors.toList()); List valueList = map.values().stream().collect(Collectors.toList()); System.out.println("Key List: " + keyList); System.out.println("Value List: " + valueList); ) )
A program kimenete megegyezik az 1. példával .
A fenti programban a ArrayList
konstruktor helyett stream()
a térképet listává alakítottuk.
Átalakítottuk a kulcsokat és az értékeket streamelésre és konvertálásra collect()
listává, a Collectors
' metódus átadása toList()
paraméterként.