해시맵은 해싱(Hashing)이 된 맵(Map)이다.
맵은 키와 값 데이터를 쌍으로 저장해 관계를 쉽게 표현하는 자료구조이고, 해싱은 키를 받아 정수값인 해시코드를 반환하고, 그 해시코드는 버킷(밸류값)의 인덱스가 된 결과를 말한다. 즉, 키가 해시 함수를 통해 배열의 특정 위치에 매핑된다.
해시맵은 키값과 밸류값을 쌍으로 저장하는 자료구조다. 키를 사용하여 밸류에 빠르게 접근할 수 있기 때문에 순서가 중요하지 않고 키를 기반으로 하는 빠른 접근이 필요할 때 사용한다. 키는 밸류를 찾기 위한 이름의 역할을 한다고 생각하면 쉽다.
컬렉션 > Map > HashMap
python의 딕셔너리와 비슷하다.
HashMap<String, String> myMap = new HashMap<String, String>( );
| 메서드 | 동작 |
|---|---|
put(K, V) | 키(K)와 밸류(V)를 쌍으로 해시맵에 추가한다. 만약 같은 이름의 키가 이미 존재한다면 해당 키의 값이 대체된다. |
get(K) | 키(K)와 연결된 밸류를 반환한다. 만약 없다면 null을 반환한다. |
remove(k) | 키를 입력받아 그 쌍을 제거하고 밸류를 반환한다. |
size | 해시맵에 저장된 쌍의 개수를 반환한다. |
containsKey | 주어진 키가 해시맵에 존재하는 지 여부를 boolean으로 반환한다. |
참고 자료