1. ホーム
  2. java

[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?

2022-03-17 01:46:44

質問

とはどのような違いがあるのでしょうか。 HashMap Hashtable をJavaで表示しますか?

非スレッドアプリケーションではどちらがより効率的ですか?

解決方法は?

とは、いくつかの違いがあります。 HashMap Hashtable をJavaで作成しました。

  1. Hashtable シンクロナイズド 一方 HashMap はありません。このため HashMap 非同期オブジェクトは通常、同期オブジェクトよりも性能が良いため、非スレッドアプリケーションに適しています。

  2. Hashtable を許可していません。 null のキーまたは値を指定します。 HashMap は、1つの null キーと、任意の数の null の値です。

  3. HashMapのサブクラスの1つが LinkedHashMap そのため、予測可能な反復処理順序(デフォルトでは挿入順序)が必要な場合は、簡単に HashMap を追加しました。 LinkedHashMap . を使う場合は、これほど簡単にはいきません。 Hashtable .

同期をとることはあなたにとって問題ではないので、私は HashMap . 同期が問題になる場合は、次のような方法もあります。 ConcurrentHashMap .