JavaのHashMapのやHashtableの違いのHashSetとHashMapの違いは何ですかとは何ですか?構造は何の数をオーバーライドする必要が救うためにこれらのメソッドを使用しますか?

HashMapのやHashtableのは同じ原則、同じ機能を実装し、基本的な構造は、ハッシュテーブル、クエリ速度は、多くの場合、相互運用可能であることができます

次の2つの主な違いはあります

図1に示すように、ハッシュテーブルは、以前のJDK提供インターフェースである、ハッシュマップは、JDKによって提供されるインタフェースの新バージョンであります

2、ハッシュテーブルクラスは辞書を継承し、HashMapのは、Mapインタフェースを実装します

3、Hashtableのスレッドセーフ、HashMapの非スレッドセーフ

図4に示すように、ハッシュテーブルはnull値を許さ、ハッシュマップはヌル値を許容します

HashSetのとHashMapの違い

1、HashSetの底部は、HashMapを使用して達成されます。HashSetのは、ほとんどのHashSetのメソッドは、メソッド呼び出しのHashMapによって達成され、実装が容易であるので、本質的に同じの実現にHashSetのとHashMapの2つのコレクション。

2は、HashMapのキーはオブジェクトHashSetの中に配置され、値はObject型です。

図3に示すように、追加のメソッドHashSetのを呼び出すとき、実際には、対象ライン(キーと値のペア)の添加であり、行のキーは行の値は、Object型の定数である、にHashSetのハッシュマップに追加されます

おすすめ

転載: www.cnblogs.com/Yanss/p/11711825.html