\r\n\r\n
HashMapとhashtableはJavaの2つの重要なデータ構造です。それらは集合フレームワークの中で、両者の間にはほとんど共通点がありません。これらの類似点がありますが、それらの間にもいくつかの違いがあります。HashMapとhashtablesはいずれもキー値ペアでデータを格納し,slaoはいずれもMapインタフェースを実現する.要素を格納するために、HashMapとHashTableはハッシュ技術を使用します。両者の違いを解決する必要があるため、最も重要な違いはスレッドセキュリティに基づいています。HashMapとHashTableの主な違いは、空キー、反復値、同期です。表現と等級。HashTableはスレッドが安全で、HashMapはスレッドが安全ではありません。HashTableは内部で同期し、HashMapは内部で同期しないため、マルチスレッドアプリケーションでHashMapを使用するのは安全ではありません。HashMapの性能はHashTableより優れている。HashTableは内部同期であるからだ。HashMapはHashTableより優れている。HashTableは残存クラスであり、減価償却によるものと考えられるからである。HashMapはHashTableより速い。jdk 1から.2 HashMapを導入すると、Java集合フレームワークのメンバーになりますが、jdk 1.2ハッシュテーブルが現れる前にjdk 1.2 Mapインタフェースが実装され、集合フレームワークのメンバーとなっている。
ターゲット | ハシト | ハッシュ・リスト |
定義#テイギ# | HashMapでは、最大1つの空キーを許可し、任意の数の空の値を許可します。 | 1つのNullキーもNull値も許可されません。 |
戻る | 遍歴要素の場合、HashMapは反復器のみを返します。 | 戻り値は反復器だけでなく列挙器でもあります。 |
インプリメンテーション | AbstractMapクラスを拡張してMapインタフェースを実現 | Dictionaryクラスを拡張してマッピングインタフェースを実現します。 |
同期 | 内部非同期 | 内部同期です |
HashMapはJavaにおける集合フレームワークにおいて重要なデータ構造である.HashMapはスレッドセキュリティではないので、マルチスレッドアプリケーションでHashMapを使用するのは安全ではありません。しかし、マルチスレッドアプリケーションでは、外部同期によりセキュリティの集合を保証することができる.同期()メソッド。AbstractMapクラスを拡張することでMapインタフェースを実現します。HashMapでは、最大1つの空キーを許可し、任意の数の空の値を許可します。HasMapが返す反復器は本質的に失敗した。HashMapは性能が良いので、HashTableよりも高速です。
HashTableはJavaにおける集合フレームワークにおいて重要なデータ構造である.ハッシュ・テーブルはスレッドが安全で、内部で同期します。したがって、マルチスレッドアプリケーションに安全に使用できます。Dictionaryクラスを拡張することでMapインタフェースを実現します。単一の空キーも空の値も許可されません。HashTableは残存クラスであり,減価償却によるものと考えられる。ハッシュ・テーブルが返す列挙は本質的に安全である。
コンピュータアーキテクチャは神秘的なもので、一般ユーザーや詳細な知識のない人にとって。HashMapとHashTableの2つの用語は似ていて、それらは同じと考えられていますが、仕事と機能では違います。従って、本稿では、この2つのタイプを正確に認識し、人々がより明確な認識を持つようにする。