Πρόγραμμα Java για μετατροπή χάρτη (HashMap) σε λίστα

Σε αυτό το πρόγραμμα, θα μάθετε διαφορετικές τεχνικές για να μετατρέψετε έναν χάρτη σε λίστα σε Java.

Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες εφαρμογές προγραμματισμού Java:

  • Διεπαφή χάρτη Java
  • 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. Δεδομένου ότι ο χάρτης περιέχει ένα κλειδί, ζεύγος τιμών , χρειαζόμαστε δύο λίστες για να αποθηκεύσουμε καθεμία από αυτές, δηλαδή keyList για κλειδιά και valueList για τιμές.

Χρησιμοποιήσαμε τη keySet()μέθοδο του χάρτη για να πάρουμε όλα τα κλειδιά και δημιουργήσαμε μια ArrayListλίστα κλειδιών από αυτά. Ομοίως, χρησιμοποιήσαμε τη values()μέθοδο του χάρτη για να πάρουμε όλες τις τιμές και δημιουργήσαμε μια ArrayListλίστα τιμών από αυτές.

Παράδειγμα 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()ως παράμετρος

ενδιαφέροντα άρθρα...