- 해싱(Hashing)이란
- 해시함수(hash function)를 이용해서 데이터를 해시테이블(hash table)에 저장하고 검색하는 기법을 말한다.
-
HashMap : 저장은 느리지만 많은 양의 데이터를 검색하는데 뛰어난 성능을 보인다.
- TreeMap : HashMap에 비해 저장이 빠르지만 데이터를 가져올 때 약간 느리다.
HashMap 에서 데이터를 집어 넣는 방법은 put() 함수를 사용한다.
key 값에 integer가 아닌 소수점이 있는 실수를 사용하면 에러가 난다.
저장할때 key 값을 저장하기 때문에 get() 함수의 인수로 찾고 싶은 key 값을 넘기시면 됩니다.
은 iterator() 함수로 Iterator 객체를 리턴합니다. Iterator 객체는 반복문 으로 데이터를 처리할 때 아주 유용합니다. Iterator 에 공통적으로 가지고 있는 hasNext() 함수로 null 인지 판단해서 while 문으로 반복한다. 그리고 차례대로 데이터를 가져올수 있는 next() 함수로 값을 꺼내죠. 이렇게 next() 로 꺼낸 값은 value 가 아니라 key 값입니다.
.clear() - 삭제
.remove(key) - 특정값 삭제
.isEmpty - 비어있는지 확인
sortedHashMap - 정렬
- Map인터페이스
키(key)와 값(value)를 하나의 세트로 묶어서 저장하는 컬렉션 클래스를 구현하는 데 사용
키(key) : 중복될 수 없음
값(value) : 중복될 수 있음.
데이터와 중복된 키와 값을 저장하면, 기존의 값은 없어지고 마지막에 저장된 값이 남게 된다.
*메서드
void clear() : Map의 모든 객체를 삭제
boolean containsKey(Object key) : 지정된 key 객체와 일치하는 Map의 key객체가 있는지 확인
boolean containsValue(Object value) : 지정된 value 객체와 일치하는 Map의 value객체가 있는지 확인
Set entrySet() : Map에 저장되어 있는 key-value쌍을 Map.Entry 타입의 객체로 저장한 “Set”으로 반환
boolean equals(Object o) : 동일한 Map인지 비교
Object get(Object key) : 지정한 key객체에 대응하는 value객체를 찾아서 반환
int hashCode() : 해시코드를 반환
boolean isEmpty() : Map이 비어있는지 확인
Set keySet() : Map에 저장된 모든 key객체를 반환한다.
Object put(Object key, Object Value) : Map에 value객체를 key객체에 연결(mapping)하여 저장
void putAll(Map t) : 지정된 Map의 모든 key-value쌍을 추가
Object remove(Object key) : 지정한 key객체와 일치하는 key-value 객체를 삭제
int size() : Map에 저장된 key-value쌍의 개수를 반환
Collection values() : Map에 저장된 모든 value 객체를 반환