본문 바로가기

Java/본격 Java 컬렉션

[Java] HashMap 개념 및 실습

Map은 따로 순서와 중복값에 상관없이 저장할 수 있는 컬렉션이다.

키(key)와 값(value)을 매칭해서 저장하는 것이 가장 큰 특징이다.

기본적으로 값을 입력하고 불러오는 공부를 해보자

.

.

package map;

import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
public class HashMapEx1 {

	public static void main(String[] args) {
		Map<String, String> map = new HashMap<>();
		
		map.put("1", "1");
		map.put("2", "2");
		map.put("3", "3");
		map.put("4", null);
		map.put(null, "50");
		
		// 지정된 키에 대한 값을 받는다.
		String value = map.get("3");
		System.out.println("Key : 3, Value = " + value);
		System.out.println();
		
		// 지정된 키에 대한 값이 없으면 기본값을 반환
		value = map.getOrDefault("5", "0");
		System.out.println("Key : 5, Value = " + value);
		System.out.println();
		
		// 키의 존재여부 확인
		System.out.println("2번 키의 존재 여부 : " + map.containsKey("2"));
		System.out.println("3번 값의 존재 여부 : " + map.containsValue("3"));
		System.out.println();
		
		// Map에 저장된 전체 항목을 얻어온다.		
		Set<Entry<String, String>> entrySet = map.entrySet();
		System.out.println(entrySet);
		
		// 키의 전체 목록을 얻어온다.
		Set<String> keySet = map.keySet();
		for(String key : keySet) {
			System.out.println(key + " : " + map.get(key));
		}
		System.out.println();
		
		// 지정한 키의 항목을 지운다.
		value = map.remove(null);
		System.out.println("삭제된 값 : " + value);
		System.out.println();
		
		// 삭제된 후 출력
		for(String key : keySet) {
			System.out.println(key + " : " + map.get(key));
		}
		
	}

}

.

.

Map은 하나씩은 불러올 수 있어도, 따로 지정할 수 있는 인덱스나 읽어오는 순서가 없기때문에

전체 데이터를 불러올 때는 키를 집합에 저장해서 따로 불러오는 형식을 취해야한다.

.

.

728x90
반응형