본문 바로가기
Developer/Java

[Java] HashMap, LinkedHashMap, TreeMap의 차이

by 순수한소년 2017. 1. 29.
728x90
반응형
package egovframework.rte.kr.go.test;

import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.TreeMap;

public class Map {

	@SuppressWarnings("unused")
	public static void main(String[] args) {
		// Map을 생성한다
		{
			// Java 6의 경우
			Map hashMap = new HashMap();

			// Java 7 이후의 경우
			Map hashMap1 = new HashMap<>();
		}

		// 요소수를 지정하여 Map을 생성한다
		{
			// HashMap 생성 시에 100 개 분의 영역을 확보
			Map hashMap = new HashMap<>(100);
		}

		// 순서성 확인
		{
			// HashMap 생성
			Map hashMap = new HashMap<>();
			hashMap.put("A", "1");
			hashMap.put("C", "3");
			hashMap.put("E", "5");
			hashMap.put("D", "4");
			hashMap.put("B", "2");
			System.out.println(hashMap); // => {D=4, E=5, A=1, B=2, C=3} 순서성 없음

			// LinkedHashMap 생성
			Map linkedHashMap = new LinkedHashMap<>();
			linkedHashMap.put("A", "1");
			linkedHashMap.put("C", "3");
			linkedHashMap.put("E", "5");
			linkedHashMap.put("D", "4");
			linkedHashMap.put("B", "2");
			System.out.println(linkedHashMap); // => {A=1, C=3, E=5, D=4, B=2} 저장순

			// TreeMap 생성
			Map treeMap = new TreeMap<>();
			treeMap.put("A", "1");
			treeMap.put("C", "3");
			treeMap.put("E", "5");
			treeMap.put("D", "4");
			treeMap.put("B", "2");
			System.out.println(treeMap); // => {A=1, B=2, C=3, D=4, E=5} 자연 순서
		}
	}
}

반응형