Java HashMap 대 Hashtable : 차이점은 무엇입니까?



Java HashMap 대 Hashtable에 대한이 기사는 Java HashMap과 Hashtable에 대한 간략한 설명과이 둘의 주요 차이점을 제공합니다.

엔트리 레벨에서 가장 자주 묻는 질문 중 하나 Java HashMap 대 Hashtable에 관한 것입니다. 따라서 다음과 관련된 모든 것에 대해 충분히 준비해야합니다. HashMap 또는 Hashtable. Java는 HashMap 및 Hashtable을 사용하여 데이터를 가치 . 따라서이 기사는이 둘의 주요 차이점을 아는 데 도움이 될 것입니다.

주제에 대해서는 다음 순서로 설명하겠습니다.





의 시작하자!

HashMap은 무엇입니까?

HashMap 지도 기반 컬렉션 클래스입니다. 키 및 값 쌍에 데이터를 저장하는 데 사용됩니다. Java에서 Map 인터페이스를 구현하는 데 도움이됩니다. 기본적으로 Java 버전 1.2부터 Java에서 Map 인터페이스의 기본 구현을 제공합니다. HashMap 내의 값에 액세스하려면 해당 값을 알아야합니다. .



HashMap이라는 기술을 사용하기 때문에 해싱 . 해싱은 String 값을 일정하게 유지하여 더 작은 값으로 변경합니다. 결과적으로 압축 된 값은 인덱싱 및 빠른 검색에 도움이됩니다.

Java-JavaHashMap 대 Hashtable-Edureka의 HashMap

자바의 해시 맵과 해시 테이블

Hashtable이란 무엇입니까?

Hashtable은 데이터 구조 키 / 값 쌍을 저장하는 데 사용됩니다. Hashtable에서 데이터는 배열 형식으로 저장되며 각 데이터 값에는 고유 한 인덱스 값이 있습니다. 원하는 데이터의 인덱스를 알고 있으면 정말 빠르게 데이터에 액세스 할 수 있습니다.



Java Hashtable 클래스는 키를 값에 매핑하는 해시 테이블을 구현합니다. Dictionary 클래스를 상속하고 Map 인터페이스를 구현합니다.

해시 테이블 선언

공용 클래스 Hashtable은 사전이 Map, Cloneable, Serializable을 구현합니다.

에: 지도에 표시되는 키 유형입니다.
V: 이것은 매핑 된 값의 유형입니다.

이제 Java에서 HashMap과 Hashtable이 작동하는 방식을 이해 했으므로 HashMap과 Hashtable의 차이점을 이해하기 위해 매개 변수를 살펴 보겠습니다.

이제 HashMap과 Hashtable의 주요 차이점을 살펴 보겠습니다.

자바 HashMap 대 Hashtable

매개 변수 HashMap 해시 테이블

동기화

동기화되지 않음은 스레드로부터 안전하지 않으며 적절한 동기화 코드 없이는 여러 스레드간에 공유 할 수 없음을 의미합니다.동기화되고 많은 스레드와 공유 가능

Null 키

하나의 null 키와 여러 개의 null 값만 허용합니다.null 키 또는 해당 값을 허용하지 않습니다.

레거시 시스템

이것은 Java 컬렉션의 일부입니다.Hashtable은 기존 클래스가 초기에 포함되지 않았습니다.

반복자

Iterator는 fail-fast이며 다른 스레드가 맵을 수정하려고하면 concurrentModificationException을 throw합니다.열거자는 fail-fast가 아닙니다.

상속 클래스

상속 AbstractMap 수업Dictionary 클래스 상속

이제 Java HashMap 및 Hashtable을 언제 사용할 수 있습니까?

HashMap 및 Hashtable은 언제 사용합니까?

  • 동기화 Java HashMap과 Hashtable의 주요 차이점입니다. 그러나 스레드로부터 안전한 작업이 필요한 경우 모든 메서드가 동기화되므로 Hashtable을 사용할 수 있습니다. 그러나 이것은 레거시 클래스이므로 피해야합니다. HashMap에서는 불가능합니다.
  • 다중 스레드 환경의 경우 Hashtable과 거의 유사한 ConcurrentHashMap을 사용할 수 있습니다. 여기에서 HashMap을 명시 적으로 동기화 할 수도 있습니다.
  • 동기화 된 작업으로 인해 성능이 저하되므로 필요한 경우가 아니면 피해야합니다. 따라서 스레드가 아닌 환경에서는 HashMap이 의심의 여지없이 확실히 사용됩니다.

이것은 우리가 배운이 기사의 끝으로 우리를 가져옵니다 차이점 Java HashMap 및 Hashtable. 여러분이이 주제에 대해 명확히 이해하시기 바랍니다.

'Java HashMap vs Hashtable'관련 기사를 찾았다면 다음을 확인하십시오. 전 세계에 250,000 명 이상의 만족 한 학습자 네트워크를 보유한 신뢰할 수있는 온라인 학습 회사입니다.

이 과정은 핵심 및 고급 Java 개념과 다양한 Hibernate & Spring처럼.

피보나치 재귀 C ++

질문이 있으시면 'Java HashMap vs Hashtable'의 댓글 섹션에있는 모든 질문에 자유롭게 질문하시면 저희 팀이 기꺼이 답변 해 드리겠습니다.