무룩 공부방

[Java02] 20. 컬렉션 프레임 워크 (7) List/Map 응용(Eclipse) 본문

IT/Java02_Intermediate

[Java02] 20. 컬렉션 프레임 워크 (7) List/Map 응용(Eclipse)

moo_look 2023. 9. 28. 17:32

# ArrayList안에 HashMap으로 데이터를 저장하는 방법


package java02_intermediate;

import java.util.ArrayList; 
import java.util.HashMap;
import java.util.List; 
import java.util.Map;

public class Java20_MapinList {  

	public static void main(String[] args) {
		
		List<Map<String, Object>> listMap = new ArrayList<Map<String,Object>>();

		HashMap<String, Object> map1 = new HashMap<String, Object>();
		map1.put("num", 1);
		map1.put("name", "홍길동");
		map1.put("kor", 100);
		map1.put("eng", 100);
		map1.put("mat", 100);
		
		listMap.add(map1);
		
		HashMap<String, Object> map2 = new HashMap<String, Object>();
		map2.put("num", 2);
		map2.put("name", "이순신");
		map2.put("kor", 90);
		map2.put("eng", 90);
		map2.put("mat", 90);
		
		listMap.add(map2);
		
		HashMap<String, Object> map3 = new HashMap<String, Object>();
		map3.put("num", 3);
		map3.put("name", "임꺽정");
		map3.put("kor", 80);
		map3.put("eng", 80);
		map3.put("mat", 80);
		
		listMap.add(map3);
		
		for(Map<String, Object> m : listMap) {
			
			System.out.print(m.get("num") + " " );
			System.out.print(m.get("name") + " " );
			System.out.print(m.get("kor") + " " );
			System.out.print(m.get("neng") + " " );
			System.out.print(m.get("name") + " " );
			System.out.println(m.get("mat") + " " );
			System.out.println();
		
		}
		
		for(int i = 0; i < listMap.size(); i++) {
			System.out.println(listMap.get(i).get("num"));
			
		}
		
	}
}


List<Map<String, Object>> listMap = new ArrayList<Map<String,Object>>(); 와 같이

ArrayList선언시 부모인 List를 이용하였는데 이를 다형성이라고 하며 이에 대해서는 추후에 다시 학습한다.

 

 저장되어있는 데이터는 위의 그림과 같이 저장된다.

가변배열인 ArrayList안에 Key와 Value값을 HashMap을 저장하여 데이터를 처리할 수 있다.