특성 | HashMap | Hashtable |
---|---|---|
동기화 | 동기화 안 됨 (동시 접근 가능) better performance (in multi-threaded env) 동시 접근이 불가능한 HashMap이 필요하다면 ConcurrentHashMap을 쓰면 됨 |
동기화됨 (동시 접근 불가) |
null 값 사용여부 | 허용 | 거절 |
서브클래스 | LinkedHashMap을 사용하면 iteration 순서 보장 | |
동시성 | 다른 쓰레드가 remove() 이외의 다른 방식으로 변경하게 되면, iterator 수행 시에 ConcurrentModificationException이 발생하여 fail-fast됨 |