Bu programda, bir haritayı Java'da bir listeye dönüştürmek için farklı teknikler öğreneceksiniz.
Bu örneği anlamak için, aşağıdaki Java programlama konuları hakkında bilgi sahibi olmalısınız:
- Java Harita Arayüzü
- Java HashMap
- Java Listesi
- Java ArrayList Sınıfı
Örnek 1: Haritayı Listeye Dönüştür
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); ) )
Çıktı
Anahtar Listesi: (1, 2, 3, 4, 5) Değer Listesi: (a, b, c, d, e)
Yukarıdaki programda Tamsayı ve Dize isimli bir harita var. Harita bir anahtar, değer çifti içerdiğinden , her birini saklamak için iki listeye ihtiyacımız var, yani anahtarlar için keyList ve değerler için valueList.
keySet()
Tüm anahtarları almak için map yöntemini kullandık ve ArrayList
onlardan bir keyList oluşturduk . Aynı şekilde, values()
tüm değerleri almak için haritanın yöntemini kullandık ve ArrayList
onlardan bir valueList oluşturduk .
Örnek 2: Akış kullanarak Haritayı Listeye Dönüştürme
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); ) )
Programın çıktısı Örnek 1 ile aynıdır .
Yukarıdaki programda ArrayList
yapıcı kullanmak yerine stream()
haritayı bir listeye dönüştürdük.
Biz akarsu ve kullanarak bir listeye dönüştürmek için anahtarlarını ve değerlerini dönüştürdüğünüz collect()
yöntem geçmesini Collectors
' toList()
bir parametre olarak.