💻 IT/📌 Java

[JAVA] Map 이란? Java Map 사용법(HashMap, TreeMap, LinkedHashMap)

GODSU 2022. 5. 26. 14:42
반응형

 

저번 포스팅에서는 자료구조 중 셋(Set)에 대해서 알아보았는데요!

 

[Java] Set 이란 ? Java Set 사용법

저번 포스팅에서는 자료구조 중 큐(Queue)에 대해서 알아보았는데요! [Java] Queue 란? Java Queue 사용법 저번 포스팅에서는 자료구조 중 Stack에 대해서 알아보았는데요! [Java] Stack 이란 ? 스택(Stack) 사용

godsu94.tistory.com






오늘은 자료구조 맵(Map)에 대해서 알아보겠습니다!






Map 이란?

Map은 순차적으로 저장하는 List(리스트). Array(배열)과 달리 Key와 Value 방식으로 저장하는 자료구조입니다.




Map 특성
  1. 순차적으로 접근해서 값을 구하지 않고 Key 값을 통해 Value 값을 얻는다
  2. 순서를 유지할 필요가 없다
  3. 값(Value)은 중복이 허용되나, Key 값은 고유(Unique) 해야 한다.



Map 구현 클래스

- HashMap : Map을 구현하는 대표 클래스, Key와 Value를 한쌍으로 저장하는 특징이 있다.
많은 양의 데이터를 검새하는데 검색 속도가 아주 빠른다

- TreeMap : 키와 값을 한쌍으로 이진트리 기법으로 저장한다.
데이터를 추가하거나 삭제하는데 속도가 아주 좋다
key으로 정렬을 통한 탐색 하는데 용의 하다

- LinkedHashMap : 데이터를 입력한 순서대로 저장된다
배열과 리스트처럼 인덱스로 접근하기 용의 하다



Java Map 사용법
import java.util.HashMap; // <-- import
        
/* init Map */
HashMap<String,String> map = new HashMap<String,String>();

Java에서는 java.util.HashMap 클래스를 임포트 하면 Map을 사용할 수 있습니다. (TreeMap, LinkedHashMap 가능)
Map는 직접 생성해서 사용할 수 없고, HashMap, TreeMap, LinkedHashMap 등의 클래스로 구현해서 사용해야 합니다.

 

 

 

반응형




[예제]

import java.util.HashMap; // <-- import

public class Main {
    public static void main(String[] args) {
   
        /* init Map */
        HashMap<String,String> map = new HashMap<String,String>();
        
        /* data input */
        map.put("Name","GODSU");
        map.put("Email","GODSU@test.com");
        map.put("PhoneNumber","010-1234-1234");
        map.put("Age","100");
        
        /* data output */
        System.out.println("Name : "+map.get("Name"));
        System.out.println("Email : "+map.get("Email"));
        System.out.println("PhoneNumber : "+map.get("PhoneNumber"));
        System.out.println("Age : "+map.get("Age"));
        
        /* function */
        System.out.println("Size : "+map.size());
        System.out.println(map.remove("Name"));
        System.out.println(map.containsKey("Name"));
        
    }
}

예제를 보면 HashMap 객체를 생성하고 Put 함수를 통해 (Key, Value) 형식으로 데이터를 입력합니다.
그 후, get("key") 메서드를 통해 값을 확인할 수 있습니다

그리고, Map에 저장된 수를 확인하는 Size 메서드와, 데이터를 삭제하는 remove, 키(Key)가 속해있는지 확인하는 containsKey 메서드 같이 Map에서도 다양한 메서드를 지원합니다.

이 뿐만 아니라 Map에서 다양한 기능을 제공하는 메서드들이 있습니다.

아래 링크에서 필요한 메서드들을 사용해보세요~

 

Map (Java Platform SE 8 )

If the specified key is not already associated with a value (or is mapped to null), attempts to compute its value using the given mapping function and enters it into this map unless null. If the function returns null no mapping is recorded. If the function

docs.oracle.com


오늘은 자료구조 중 맵(Map)을 알아보았습니다.

감사합니다



반응형