Javaコンテナの分析シリーズ(15)ハッシュテーブル辞書およびプロパティ

原則ハッシュテーブルとHashMapのは違いはありません。

次のようにHashMapとの主な違いは以下のとおりです。

  1. JDK時間に追加:ハッシュテーブルはJDK1.0の時間を追加し、HashMapのはJDK1.2の時間を追加しました。
  2. クラス署名:どちらも、Mapインタフェースを実装していますが、HashMapのは、クラスAbstractMapから継承されたハッシュテーブルは、辞書から継承されました。
  3. キーの値がnullで、ハッシュテーブル、キー値がnullに許可されていないのHashMapと許します。
  4. HashMapのは、スレッドセーフではなく、スレッドセーフなハッシュテーブル、各方法が同期されるか、または同期メソッドが呼び出されます。
  5. 列挙HashTableには横断できます。
  6. ハッシュテーブルを使用すると、スレッドセーフ必要がある場合は、推奨されていないMap、使用することができますCollections.synchronizedMap()

次のようにDictionaryクラスが定義されています。

/**
 * 
 * 保存键值对;
 * key和value均不能为null;
 * 该类已被废弃,新的实现应该实现Map接口;
 * 
 * @since JDK1.0
 */
public abstract class Dictionary<K, V> {

    public Dictionary() {
    }

    abstract public int size();
    abstract public boolean isEmpty();
    // 返回所有 key 的Enumeration
    abstract public Enumeration<K> keys();
    // 返回所有 value 的Enumeration
    abstract public Enumeration<V> elements();
    abstract public V get(Object key);
    abstract public V put(K key, V value);
    abstract public V remove(Object key);

}

ハッシュテーブルの事実は、サブカテゴリーがあります:キーと値のプロパティと属性を保存して読むためのプロパティは、プロパティに永続化することができ;.ファイル
のプロパティでは、あなたが見ることができますJavaのプロパティクラスの動作をし、Javaファイルには、プロパティを読んで6つの方法

おすすめ

転載: www.cnblogs.com/jamesvoid/p/10937595.html