반응형

이 게시물은 다음 링크를 참조하여 학습했습니다.

 

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

 

HashMap (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

 

TreeMap (Java Platform SE 8 )

A Red-Black tree based NavigableMap implementation. The map is sorted according to the natural ordering of its keys, or by a Comparator provided at map creation time, depending on which constructor is used. This implementation provides guaranteed log(n) ti

docs.oracle.com

 

[JAVA]Map이란? (HashMap, Hashtable, TreeMap)

Map 컬렉션 클래스 Map 인터페이스는 Collection 인터페이스와는 다른 저장 방식을 가집니다. Map 인터페이스를 구현한 Map 컬렉션 클래스들은 키와 값을 하나의 쌍으로 저장하는 방식(key-value 방

devlogofchris.tistory.com

 

1. Map

Map은 key와 value의 쌍을 데이터로 갖는 자료형이다.

key는 중복을 허용하지 않고, value는 중복으로 값을 넣어줄 수 있다.

Map 인터페이스를 상속받는 객체들은 엄청 많은데 이 게시물에서는 내가 자주 사용할 HashMap, TreeMap만 정리하려한다.

 

2. HashMap

HashMap은 Map 컬렉션 클래스에서 가장 많이 사용되는 클래스 중 하나이다.

Hash algorithm을 사용한 Map으로 검색 속도가 매우 빠른 특징을 갖고 있다.

 

2-1. 메서드

내가 자주 사용할 메서드만 정리했따.

 

(1) void clear()

맵의 모든 데이터를 제거한다.

 

(2) boolean containsKey(Object key)

맵에 key가 있는지 확인한다.

 

(3) boolean containsValue(Object value)

맵에 value가 있는지 확인한다.

 

(4) V get(Object key)

맵의 key에 해당하는 값을 반환한다.

 

(5) V getOrDefault(Object key, V defaultValue)

맵의 key에 해당하는 값이 있으면 반환, 없으면 defaultValue를 반환한다.

 

(6) boolean isEmpty()

맵이 비어있는지 확인한다.

 

(7) V put(K key, V value)

맵에 key, value에 해당하는 데이터를 넣어준다.

 

(8) V remove(Object key)

맵에서 key에 해당하는 key-value를 삭제한다.

 

(9) int size()

맵의 사이즈를 반환한다.

 

3. TreeMap

TreeMap은 데이터를 key를 기준으로 정렬하는 맵이다.

default는 오름차순이고, 정렬 방식을 지정해 줄수있다.

 

3-1. 메서드

(1) void clear()

맵의 모든 데이터를 제거한다.

 

(2) boolean containsKey(Object key)

맵에 key가 있는지 확인한다.

 

(3) boolean containsValue(Object value)

맵에 value가 있는지 확인한다.

 

(4) V get(Object key)

맵의 key에 해당하는 값을 반환한다.

 

(5) K firstKey()

맵의 첫번째 키를 반환한다.

 

(6) K lastKey()

맵의 마지막 키를 반환한다.

 

(7) K ceilingKey(K key)

맵에서 key보다 첫번째로 크거나 같은 키를 반환한다.

 

(8) K floorKey(K key)

맵에서 key보다 첫번째로 작거나 같은 키를 반환한다.

 

(9) K higherKey(K key)

맵에서 key보다 첫번째로 큰 키를 반환한다.

 

(10) K lowerKey(K key)

맵에서 key보다 첫번째로 작은 키를 반환한다.

 

(11) V put(K key, V value)

맵에 key, value에 해당하는 데이터를 넣어준다.

 

(12) V remove(K key, V value)

맵에서 key에 해당하는 key-value를 삭제한다.

 

(13) int size()

맵의 사이즈를 반환한다.

반응형

'Legacy' 카테고리의 다른 글

[Java#6] Stack  (0) 2022.05.04
[Java#5] Set, HashSet, TreeSet  (0) 2022.05.03
[Java#3] Array, ArrayList, Arrays  (0) 2022.05.02
[Java#2] String, StringBuilder  (0) 2022.04.29
[Java#1] 입출력  (0) 2022.04.29

+ Recent posts