I det här programmet lär du dig olika tekniker för att konvertera en karta till en lista i Java.
För att förstå detta exempel bör du ha kunskap om följande Java-programmeringsämnen:
- Java Map Interface
- Java HashMap
- Java-lista
- Java ArrayList-klass
Exempel 1: Konvertera karta till lista
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); ) )
Produktion
Nyckellista: (1, 2, 3, 4, 5) Värdelista: (a, b, c, d, e)
I programmet ovan har vi en karta över heltal och sträng med namnet karta. Eftersom kartan innehåller ett nyckel, värdepar , behöver vi två listor för att lagra var och en av dem, nämligen keyList för tangenter och valueList för värden.
Vi använde karts keySet()
metod för att få alla nycklar och skapade en ArrayList
nyckellista från dem. På samma sätt använde vi kartans values()
metod för att få alla värden och skapade en ArrayList
värdelista från dem.
Exempel 2: Konvertera karta till lista med ström
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); ) )
Programmets utdata är densamma som i exempel 1 .
I ovanstående program, istället för att använda ArrayList
konstruktör, har vi använt för stream()
att konvertera kartan till en lista.
Vi har konverterat nycklarna och värdena för att strömma och konvertera det till en lista med collect()
metod som passerar Collectors
' toList()
som parameter.