English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا البرنامج، ستتعلم تقنيات مختلفة لتحويل مجموعة map إلى قائمة.
import java.util.*; public class MapList { public static void main(String[] args) { Map<Integer, String> map = new HashMap<>(); map.put(1, "a"); map.put(2, "b"); map.put(3, "c"); map.put(4, "d"); map.put(5, "e"); List<Integer> keyList = new ArrayList<>(map.keySet()); List<String> valueList = new ArrayList<>(map.values()); System.out.println("قائمة المفاتيح: " + keyList); System.out.println("قائمة القيم: " + valueList); } }
عند تشغيل هذا البرنامج، الناتج هو:
قائمة المفاتيح: [1, 2, 3, 4, 5] قائمة القيم: [a, b, c, d, e]
في البرنامج المذكور أعلاه، لدينا مجموعة map تحتوي على Integer وString. نظرًا لأن map يحتوي علىمفتاح قيمةنعم، لذا نحتاج إلى قائمتين لتخزينهما، أي keyList المفتاح وvalueList القيمة.
نستخدم طريقة map.keySet() للحصول على جميع المفاتيح، ونقوم بإنشاء ArrayList keyList منها. بنفس الطريقة، نستخدم طريقة map.values() للحصول على جميع القيم، ونقوم بإنشاء ArrayList valueList منها.
import java.util.*; import java.util.stream.Collectors; public class MapList { public static void main(String[] args) { Map<Integer, String> map = new HashMap<>(); map.put(1, "a"); map.put(2, "b"); map.put(3, "c"); map.put(4, "d"); map.put(5, "e"); List<Integer> keyList = map.keySet().stream().collect(Collectors.toList()); List<String> valueList = map.values().stream().collect(Collectors.toList()); System.out.println("قائمة المفاتيح: " + keyList); System.out.println("قائمة القيم: " + valueList); } }
الإخراج للبرنامج هو نفسه في المثال 1
في البرنامج أعلاه، لم نستخدم بناء ArrayList، بل استخدمنا stream() لتحويل المapping إلى قائمة
لقد عبرنا عن مفتاح و قيمة كتحويلات عبر استخدام toList() كمعامل لـ collect() لتحويلات الكل