다른 컬렉션이나 자료구조에 대한 정보가 필요하다면 아래의 링크를 클릭하시라.👍
HashMap?
키(key)와 값(value)을 묶어 하나의 데이터로 저장한다
해싱(Hashing)을 사용하여 많은 양의 데이터를 검색하는데 높은 성능을 보인다.
💡(많은 양의 데이터를 저장하는데 적합하다.)
HashMap은 키와 값이 각각 Object타입으로 어떠한 객체도 저장할 수 있지만
키는 주로 String을 대문자 또는로 통일해서 사용하곤 한다.
키(key) 컬렉션 내의 저장된 값을 찾는데 사용되기 때문에 유일해야 한다. 값(value) 키(key)와 달리 데이터의 중복을 허용한다. |
생성자
생성자 | 설 명 |
HashMap() | HashMap객체를 생성 |
HashMap(int initialCapacity) | 지정된 값을 초기용량으로 하는 HashMap객체를 생성 |
HashMap(int initialCapacity, float loadFactor) | 지정된 초기용량과 load factor의 HashMap객체를 생성 |
HashMap(Map m) | 지정된 Map의 모든 요소를 포함하는 HashMap 생성 |
load factor?
저장공간이 가득 차기 전에 미리 용량을 확보하기 위한 것
예를 들어 이 값이 0.7면 저장공간의 70%가 채워졌을 때 용량이 2배로 늘어난다.
지정 하지 않았을때의 디폴트 값은 75%로 load factor가 0.75이다.
메소드
메소드 | 설명 |
Object get(Object key) | 지정된 키(key)의 값(객체)을 반환, 못찾으면 null 반환 |
Object getOrDefault(Object key, Object defaultValue) | 지정된 키(key)의 값(객체)을 반환 못찾으면 기본값(defaultValue)에 지정된 객체를 반환. |
Object put(Object key, Object value) | 지정된 키와 값을 HashMap에 저장 |
void putAll(Map m) | Map에 저장된 모든 요소를 HashMap에 저장 |
Object clone() | 현재 HashMap을 복제해서 반환 |
Object remove(Object key) | HashMap에서 지정된 키로 저장된 값(객체를 제거) |
Object replace(Object key, Object value) | 지정된 키의 값을 지정된 객체(value)로 대체 |
boolean replace(Object key, Object oldValue, Object newValue) |
지정된 키와 객체(oldValue)가 모두 일치하는 경우에만 새로운 객체(newValue)로 대체 |
void clear() | HashMap에 저장된 모든 객체를 제거 |
int size() | HashMap에 저장된 요소의 개수를 반환 |
boolean isEmpty() | HashMap이 비어있는지 알려준다. |
boolean containsKey(Object key) | HashMap에 지정된 키(key)가 포함되어있는지 알려준다 포함되어 있으면 ture |
boolean containsValue(Object value) | HashMap에 지정된 값(value)가 포함되어있는지 알려준다 포함되어 있으면 true |
Set keySet() | HashMap에 저장된 모든 키가 저장된 Set을 반환 |
Set entrySet() | HashMap에 저장된 키와 값을 엔트리(키와 값의 결합)의 형태로 Set에 저장해서 반환 |
Collection values() | HashMap에 저장된 모든 값을 컬렉션의 형태로 반환 |
댓글