자바에서는 지도 키를 값에 매핑하는 인터페이스입니다. 때로는 구현이 필요합니다. 지도의 지도 (중첩 맵).
중첩된 지도 다른 코스의 ID와 함께 학생의 이름을 저장하는 등 많은 경우에 사용됩니다. 이 경우에는 코스 이름과 값이라는 키를 갖는 맵, 즉 ID와 값이라는 키, 즉 학생 이름을 갖는 또 다른 맵을 생성합니다.
Java에서 Map of Map을 생성하려면 다음 단계를 사용해야 합니다.
- 각 코스의 사용자로부터 총 학생 수를 가져옵니다.
- 사용자의 입력을 받아 모든 강좌의 학생 정보를 입력합니다.
- 코스 이름을 키로 추가하고 사용자가 지도를 값으로 추가하여 기본 지도를 채웁니다.
- for 루프 내에서 먼저 모든 Map의 키를 Object 유형의 ArrayList로 변환합니다.
- 그런 다음 get() 메소드를 사용하여 목록에서 객체를 가져오고 이 객체에 해당하는 Map에서 값을 가져와 값을 인쇄합니다.
데이터를 저장할 Map of Map을 생성하는 로직을 구현해 보겠습니다.
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></=>