posted by 구름너머 2006. 3. 29. 09:13
Hashtable과 HashMap의 차이점 알고 싶습니다..
평점 :
+ 1 (1 명)나도 평가하기tmslzl80 조회 :1153답변 : 1
답변이 완료된 질문입니다. (2004-11-15 10:55 작성)신고
이 둘의 차이점을 잘 모르겠네요
책에는 HashMap이 Hashtable보완되어 나왔다고만 되어 있는데
사용하는거 보니깐 그렇지 않은거 같아서요
아직도 Hashtable을 많이 사용도 되고 있는거 같고....
질문자가 선택한 답변
re: Hashtable과 HashMap의 차이점 알고 싶습니다..
bomb100 (2004-11-15 12:37 작성)
이의제기 | 신고
질문자 평
HashMap 이나 Hashtable 이나 둘다 Map 인터페이스를 implements 하고있지만 프로그래밍 환경에 따라서 적절한 놈으로 골라써야 합니다.



java API 문서에 보면

The HashMap class is roughly equivalent to Hashtable, except that it is unsynchronized and permits nulls

"간략히 말해서 HashMap 은 Hashtable과 같다, 다만 HashMap 이 unsynchronized 하고 null 값을 허용할 뿐이다."

그러면 Hashtable 에는 null 값이 들어갈 수 없다는건가? 이건 잘 모르겠지만 님께서 Hashtable 만들어놓고 null 키값과 null value 를 함 넣어보시면 확인하실 수 있을 듯...

중요한 건 HashMap은 멀티쓰레드 환경에서 사용하면 안된다는 겁니다.

여러개의 쓰레드가 동시에 HashMap 을 건드려서 key, value 를 써넣게 되면 문제가 발생할 수 있다, 뭐 이런것 같습니다. 멀티쓰레드 프로그래밍 환경에서는 HashMap 을 쓰면 안되고 Hashtable 을 써야 한다는 거죠...

단일 쓰레드 환경에서 Hashtable 을 쓰더라도 별 문제는 없는데, HashMap보다는 성능이 저하될 수 있습니다.

'JAVA' 카테고리의 다른 글

Map(HashMap, TreeMap, Hashtable)  (0) 2006.03.29
HashTable vs HashMap 사용법  (0) 2006.03.29
Jsp 기초 - 스크립트 프로그래밍  (0) 2006.02.17
Runtime.getRuntime().exec( cmd )  (1) 2005.11.25
StringTokenizer for JDK1.5.0  (0) 2005.11.25