기타/JAVA

[JAVA] Map / HashMap 사용하기

푸쿠이 2018. 7. 8. 15:21

ㅇ HashMap 특징

 

모든 데이터는 키와 값이 존재한다.

키가 없이 값만 저장될 수 없다. (값 없이 키만 저장될 수도 없다.)

는 해당 map에서 고유해야 한다.

은 해당 map에서 중복되어도 상관없다.

 

 

ㅇ 실행 예시

 

import java.util.HashMap;

public class HashMapEx01 {
	public static void main(String[] args) {
		
		HashMap map = new HashMap();

		// put() 함수를 이용하여 설정한 객체 형태로 데이터 삽입
		map.put(4, "FOUR");
		map.put(16, "정민규");
		map.put(2, "TWO");
		map.put(3, "THIRD");
		map.put(1, "ONE");

		System.out.println(map); // 키와 값 출력
		System.out.println("------------------------------------");
		
		System.out.println(map.keySet()); // 키 출력
		System.out.println("------------------------------------");
		
		System.out.println(map.values()); // 값 출력
		System.out.println("------------------------------------");

		System.out.println("key값 7의 value는? " + map.get(7));
		System.out.println("key값 2의 value는? " + map.get(2));
		System.out.println("------------------------------------");

		map.put(16, "@정민규@"); // 수정
		System.out.println(map);
		System.out.println("------------------------------------");

		map.remove(16); // 삭제
		System.out.println(map);
		System.out.println("------------------------------------");

		// key 포함 여부
		if (map.containsKey(1)){
			System.out.println("key값 1의 value는 " + map.get(1) + "입니다.");
			System.out.println("------------------------------------");
		}

		// value 포함 여부
		if (map.containsValue("TWO")){
			System.out.println(map.get(2) + "입니다.");
		}
	}

}

 

ㅇ 결과

{16=정민규, 1=ONE, 2=TWO, 3=THIRD, 4=FOUR}
------------------------------------
[16, 1, 2, 3, 4]
------------------------------------
[정민규, ONE, TWO, THIRD, FOUR]
------------------------------------
key값 7의 value는? null
key값 2의 value는? TWO
------------------------------------
{16=@정민규@, 1=ONE, 2=TWO, 3=THIRD, 4=FOUR}
------------------------------------
{1=ONE, 2=TWO, 3=THIRD, 4=FOUR}
------------------------------------
key값 1의 value는 ONE입니다.
------------------------------------
TWO입니다.