In Java, Karte ist eine Schnittstelle, die Schlüssel Werten zuordnet. Manchmal ist eine Umsetzung erforderlich Karte der Karte (verschachtelte Karte).
Verschachtelte Karte wird in vielen Fällen verwendet, beispielsweise zum Speichern der Namen von Studenten mit ihren IDs verschiedener Kurse. In diesem Fall erstellen wir eine Map mit einem Schlüssel, d. h. Kursname und -wert, d. h. eine weitere Map mit einem Schlüssel, d. h. Id und Wert, d. h. dem Namen des Studenten.
Wir sollten die folgenden Schritte ausführen, um eine Map of Map in Java zu erstellen:
- Nehmen Sie für jeden Kurs die Gesamtzahl der Studierenden vom Benutzer.
- Füllen Sie die Studenteninformationen aller Kurse aus, indem Sie Eingaben des Benutzers entgegennehmen.
- Füllen Sie die Hauptkarte, indem Sie den Kursnamen als Schlüssel und die vom Benutzer ausgefüllte Karte als Wert hinzufügen.
- Innerhalb der for-Schleife konvertieren wir zunächst alle Schlüssel der Map in eine ArrayList vom Typ Object.
- Danach holen wir das Objekt mit der Methode get() aus der Liste und holen uns den Wert aus der Map, der diesem Objekt entspricht, um den Wert auszugeben.
Lassen Sie uns die Logik zum Erstellen einer Map of Map zum Speichern von Daten implementieren.
MapOfMapExample.java
import java.util.HashMap; import java.util.Map; import java.util.*; //create class MapOfMapExample to create a MapOfMap Example public class MapOfMapExample { // main() method start public static void main(String[] args) { // declare variables int size1 = 0; int size2 = 0; // create a Map for BCA students that will store students Id and Name Map bcaStudents = new HashMap(); // create a Map for MCA students that will store students Id and Name Map mcaStudents = new HashMap(); // create Scanner class object to take input from user Scanner sc = new Scanner(System.in); System.out.println('Enter total number of BCA students.'); size1 = Integer.parseInt(sc.nextLine()); System.out.println('Enter total number of MCA students.'); size2 = Integer.parseInt(sc.nextLine()); // fill bcaStudents Map by taking input from user for(int i = 1; i <= size1; i++){ int id="100;" string name ; system.out.println('enter of ' + i 'st student bca:'); system.out.println('student '; mca:'); bca', bcastudents); students.put('mca', mcastudents); print students map system.out.println('map map: students); elements for (int < students.size(); arraylist data="new" arraylist(students.keyset()); object obj="data.get(i);" system.out.println('course: students: students.get(obj)); } close scanner class sc.close(); pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/java-tutorial/96/map-map-java.webp" alt="Map of Map in Java"> <hr></=>