В тази програма ще научите различни техники за преобразуване на карта в списък в Java.
За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:
- Интерфейс на Java Map
- Java HashMap
- Списък на Java
- Клас на Java ArrayList
Пример 1: Преобразуване на карта в списък
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); ) )
Изход
Списък с ключове: (1, 2, 3, 4, 5) Списък със стойности: (a, b, c, d, e)
В горната програма имаме карта на Integer и String, наречена map. Тъй като картата съдържа ключ, двойка стойност , ние се нуждаем от два списъка, за да съхраняваме всеки от тях, а именно keyList за ключове и valueList за стойности.
Използвахме keySet()
метода на map, за да получим всички ключове и създадохме ArrayList
списък с ключове от тях. По същия начин използвахме values()
метода на картата, за да получим всички стойности и създадохме ArrayList
valueList от тях.
Пример 2: Преобразуване на карта в списък с помощта на поток
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); ) )
Резултатът от програмата е същият като пример 1 .
В горната програма, вместо да използваме ArrayList
конструктор, сме използвали stream()
за конвертиране на картата в списък.
Преобразувахме ключовете и стойностите за поточно предаване и ги преобразувахме в списък, като използваме collect()
метод като Collectors
„ toList()
параметър“.