[Java] Map 자료형 알아보기

·2023년 9월 12일
0

JAVA

목록 보기
4/15

Jump To Java 를 참고하여 작성하였습니다.

프로그래머스 공부하는데 내가 map 자료형을 어색해 한다는 사실을 깨닫고 정리한다.

1. Map 자료형이란?

맵은 대응 관계를 쉽게 알아볼 수 있도록 해 주는 자료형이다.
사전과 비슷하게 key 와 value 값을 한쌍으로 갖고, key 값에 대응하는 value 값을 얻을 수 있다.
맵 자료형은 HashMap, LinkedHashMap, TreeMap 이 있다.
맵 자료형의 가장 큰 특징은 순서에 의존하지 않는다는 것 이다. 따라서 프로그래밍 개발 목적에 따라 잘 선택해서 사용하는 것이 중요하다.

2. 가장 기본적인 HashMap

HashMap 의 메서드 정리.
(1) map.put()

import java.util.HashMap;

public class Sample {
    public static void main(String[] args) {
        HashMap<String, String> map = new HashMap<>();
        map.put("people", "사람");
        map.put("baseball", "야구");
    }
}

만약 특정 키의 값이 존재한다면 그 키에 해당하는 value를 변경해 준다

map 자료형에 key와 value 값을 추가한다.

(2) map.get()

import java.util.HashMap;

public class Sample {
    public static void main(String[] args) {
        HashMap<String, String> map = new HashMap<>();
        map.put("people", "사람");
        map.put("baseball", "야구");
        System.out.println(map.get("people")); // "사람" 출력
    }
}

value 값을 얻을 때 사용한다.

(3) getOrDefault()
맵에 해당하는 value 값이 없을 때, get 메서드를 사용하면 null 이 리턴된다. null 대신 기본값 default 를 얻고 싶다면, getOrDefault 메서드를 사용하면 된다.

System.out.println(map.getOrDefault("java", "자바"));  // "자바" 출력

(4) containsKey()

(... 생략 ...)
HashMap<String, String> map = new HashMap<>();
map.put("people", "사람");
map.put("baseball", "야구");
System.out.println(map.containsKey("people"));  // true 출력

해당 key 값이 있으면 true, 없으면 false 를 출력한다.

(5) remove()

(... 생략 ...)
HashMap<String, String> map = new HashMap<>();
map.put("people", "사람");
map.put("baseball", "야구");
System.out.println(map.remove("people"));  // "사람" 출력

해당 key 항목을 삭제한 뒤 value 값을 리턴한다.

(6) size()

(... 생략 ...)
HashMap<String, String> map = new HashMap<>();
map.put("people", "사람");
map.put("baseball", "야구");
System.out .println(map.remove(“people”)); // 사람 출력
System.out.println(map.size());

맵 요소의 개수를 리턴한다.

(7) keySet()

import java.util.HashMap;

public class Sample {
    public static void main(String[] args) {
        HashMap<String, String> map = new HashMap<>();
        map.put("people", "사람");
        map.put("baseball", "야구");
        System.out.println(map.keySet());  // [baseball, people] 출력
    }
}

3. LinkedHashMap 과 TreeMap

LinkedHashMap 은 입력된 순서대로 sort 해 Map 을 가져오는 것이고,
TreeMap 은 입력된 key의 오름차순으로 데이터를 저장하는 것이다.

profile
자바 백엔드 개발자 개인 위키

0개의 댓글

관련 채용 정보