자바 TreeMap 클래스 | 자바 입문강좌 50

자바 TreeMap 클래스

이번 포스팅은 자바 TreeMap 클래스 입니다. TreeMap은 이진트리(Binary Tree)와 Map (지도 key-value 관계)를 합친 것으로 입력과 동시에 오름차순 정렬을 합니다.

아래 코드에서 TreeMap<Integer, String>에서 Key인 Integer Wrapper를 기준으로 정렬하는 것을 볼 수 있습니다. 입력하는 순서를 바꿔도 요소를 꺼내올 때는 1부터 9까지 정렬이 됩니다.

package com.kay;

import java.util.*;

public class Main {
    public static void main(String[] args) {
       TreeMap<Integer, String> tMap = new TreeMap<Integer, String>();
       tMap.put(5, "Oh test!");
       tMap.put(2, "Tree Map Avaiable");
       tMap.put(1, "Tree Map is easy");
       tMap.put(3, "Key and Value");
       tMap.put(9, "Binary Tree");
       tMap.put(4, "Map is not Set");
       tMap.put(6, "Integer has comparable");
       tMap.put(8, "treemap use put");
       tMap.put(7, "this is the last one");

       for(Map.Entry m1 : tMap.entrySet()){
           System.out.print(m1.getKey() + ": ");
           System.out.println(m1.getValue());
       }
    }
}
1: Tree Map is easy
2: Tree Map Avaiable
3: Key and Value
4: Map is not Set
5: Oh test!
6: Integer has comparable
7: this is the last one
8: treemap use put
9: Binary Tree

for 문으로 TreeMap의 요소를 가져올 때 Map.Entry 객체로 가져오면 메소드를 사용해서 key와 value를 각각 가져올 수 있습니다. 항상 Map은 두개의 대응관계인 key – value 가 성립하므로 별도로 가져올 수 있습니다.

요약

컬렉션 프레임워크의 하나인 자바 TreeMap 클래스를 알아봤습니다. 알고리즘을 처음부터 작성하는 일은 어렵지만 완성된 자료구조를 사용하는 방법은 어렵지 않습니다.

참고문서

TreeMap in Java – javatpoint

TreeMap in Java with Example (beginnersbook.com)

TreeMap in Java – GeeksforGeeks

A Guide to TreeMap in Java | Baeldung

Java TreeMap (With Examples) (programiz.com)

Leave a Comment