[JAVA] TreeMap

캐떠린·2023년 8월 15일

⚠️Warning
본 포스트는 당일 학원에서 배운 내용을 복습하는 목적의 공부 기록 시리즈입니다. 정보 전달의 목적이 아님을 유의해주세요! 잘못된 내용에 대한 피드백을 환영합니다:)


❓ TreeMap이란?

: 이진검색트리의 형태로 키와 값의 쌍으로 이루어진 데이터를 저장 → 검색과 정렬에 적합한 컬렉션 클래스.

  • Tree → 이진 탐색 트리 → 자동 정렬
  • Map → 키 + 값 → 연관 배열

TreeMap<String,String> map = new TreeMap<String,String>();

  • 데이터 넣기 .put()
    TreeMap<String,String> map = new TreeMap<String,String>();
    
    map.put("white", "흰색");
    map.put("black", "검정");
    map.put("red", "빨강");
    map.put("yellow", "노랑");
    map.put("blue", "파랑");
    map.put("orange", "주황");
    map.put("green", "초록");
    
    //Key 값(a > z 순) 정렬됨
    System.out.println(map); //{black=검정, blue=파랑, green=초록, orange=주황, red=빨강, white=흰색, yellow=노랑}
    • 데이터 덮어쓰기 .put()
      → 기존 값 수정(중복 허용X)
       map.put("green", "초록");
       System.out.println(map.get("green")); //초록
       
       map.put("green", "녹색");
       System.out.println(map.get("green")); //녹색
  • 데이터 개수 확인 .size()
    System.out.println(map.size()); //7
  • 데이터 불러오기 .get()
    System.out.println(map.get("green")); //초록
  • 기타
    → 정렬되어 있어서 기준값 기준으로 조건에 해당하는 값 구하기 가능
    .firstKey() .lastKey() .headMap("m") .tailMap("m") .subMap("r", "w")
     System.out.println(map.firstKey()); //black
     System.out.println(map.lastKey()); //yellow
     
     //Key값이 m으로 시작하기 전까지의 값
     System.out.println(map.headMap("m")); //{black=검정, blue=파랑, green=녹색}
     
     //키값이 m부터 시작하는 값
     System.out.println(map.tailMap("m")); //{orange=주황, red=빨강, white=흰색, yellow=노랑}
     
     //키값 r부터 w전까지(r포함, w미포함)
     System.out.println(map.subMap("r", "w")); //{red=빨강}
profile
개발자 꿈나무의 모든 공부 기록

0개의 댓글