본문 바로가기

Dev/Java

[java] Map / HashMap + treeMap

parameterMap, resultMap 을 찾아보다가 HashMap와 Map의 차이점이 기억이 나질 않아 정리해본다.

배운 거 다 잊은거니..? 이래서 공부를 해야한다..

 

Map

Map은 key와 value를 가진 집합이며, 중복을 허용하지 않는다.

내부 hash 값에 따라서 키순서가 정해지므로 특정 규칙없이 출력됨!

HashMap

Map Interface를 implement한 클래스로서 중복을 허용하지 않는다.

key 또는 value 값으로써 null을 허용한다

import java.util.*;

public class HashMapTest
{
    public static void main(String argv[])
    {
        HashMap hm = new HashMap();
        System.out.println(hm.put("aaa", "111"));
        System.out.println(hm.put("bbb", "222"));
        System.out.println(hm.put("aaa", "444"));
        System.out.println(hm.put("ccc", "333"));    
        System.out.println(hm.put("ccc", null));       
        
        System.out.println("HashMap size : " + hm.size());
        
        Set set = hm.keySet();
        Object []hmKeys = set.toArray();
        for(int i = 0; i < hmKeys.length; i++)
        {
            String key = (String)hmKeys[i];   
            System.out.print(key);
            System.out.print(" - ");
            System.out.println((String)hm.get(key));
        }
    }
}

/**
실행:java HashMapTest
결과:
null
null
111
null
333
HashMap size : 3
ccc - null
bbb - 222
aaa - 444
*/

 

 

+ TreeMap

hashMap과 다른 점은 key값들에 대한 정렬이 이루어진다는 점이다.

<!--참고 글 링크--!>

http://pelican7.egloos.com/881589

반응형

'Dev > Java' 카테고리의 다른 글

[java] Map에서 사용하는 getOrDefault()  (0) 2021.01.04
[java] ListOrderedMap, egovMap  (0) 2019.07.08