Class Hashtable<K,V>

java.lang.Object
java.util.Dictionary<K,V>
java.util.Hashtable<K,V>
All Implemented Interfaces:
Map<K,V>

public class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>

Hashtable associates keys with values. Both keys and values cannot be null. The size of the Hashtable is the number of key/value pairs it contains. The capacity is the number of key/value pairs the Hashtable can hold. The load factor is a float value which determines how full the Hashtable gets before expanding the capacity. If the load factor of the Hashtable is exceeded, the capacity is doubled.

See also
  • Enumeration

  • java.io.Serializable

  • java.lang.Object#equals

  • java.lang.Object#hashCode

  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new Hashtable using the default capacity and load factor.
    Hashtable(int capacity)
    Constructs a new Hashtable using the specified capacity and the default load factor.
    Hashtable(int capacity, float loadFactor)
    Constructs a new Hashtable using the specified capacity and load factor.
    Hashtable(Map<? extends K, ? extends V> map)
    Constructs a new instance of Hashtable containing the mappings from the specified map.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Removes all key/value pairs from this Hashtable, leaving the size zero and the capacity unchanged.
    boolean
    Returns true if this Hashtable contains the specified object as the value of at least one of the key/value pairs.
    boolean
    Returns true if this Hashtable contains the specified object as a key of one of the key/value pairs.
    boolean
    Searches this Hashtable for the specified value.
    Returns an enumeration on the values of this Hashtable.
    Returns a set of the mappings contained in this Hashtable.
    boolean
    equals(Object object)
    Compares this Hashtable with the specified object and indicates if they are equal.
    get(Object key)
    Returns the value associated with the specified key in this Hashtable.
    int
    Returns an integer hash code for the receiver.
    boolean
    Returns true if this Hashtable has no key/value pairs.
    Returns an enumeration on the keys of this Hashtable instance.
    Returns a set of the keys contained in this Hashtable.
    put(K key, V value)
    Associate the specified value with the specified key in this Hashtable.
    void
    putAll(Map<? extends K, ? extends V> map)
    Copies every mapping to this Hashtable from the specified map.
    protected void
    Increases the capacity of this Hashtable.
    Removes the key/value pair with the specified key from this Hashtable.
    int
    Returns the number of key/value pairs in this Hashtable.
    Returns the string representation of this Hashtable.
    Returns a collection of the values contained in this Hashtable.

    Methods inherited from class Object

    clone, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • Hashtable

      public Hashtable()
      Constructs a new Hashtable using the default capacity and load factor.
    • Hashtable

      public Hashtable(int capacity)

      Constructs a new Hashtable using the specified capacity and the default load factor.

      Parameters
      • capacity: the initial capacity.
    • Hashtable

      public Hashtable(int capacity, float loadFactor)

      Constructs a new Hashtable using the specified capacity and load factor.

      Parameters
      • capacity: the initial capacity.

      • loadFactor: the initial load factor.

    • Hashtable

      public Hashtable(Map<? extends K, ? extends V> map)

      Constructs a new instance of Hashtable containing the mappings from the specified map.

      Parameters
      • map: the mappings to add.
  • Method Details

    • clear

      public void clear()

      Removes all key/value pairs from this Hashtable, leaving the size zero and the capacity unchanged.

      See also
      • #isEmpty

      • #size

      Specified by:
      clear in interface Map<K,V>
    • contains

      public boolean contains(Object value)

      Returns true if this Hashtable contains the specified object as the value of at least one of the key/value pairs.

      Parameters
      • value: the object to look for as a value in this Hashtable.
      Returns
      Returns:

      true if object is a value in this Hashtable, false otherwise.

      See also
      • #containsKey

      • java.lang.Object#equals

    • containsKey

      public boolean containsKey(Object key)

      Returns true if this Hashtable contains the specified object as a key of one of the key/value pairs.

      Parameters
      • key: the object to look for as a key in this Hashtable.
      Returns
      Specified by:
      containsKey in interface Map<K,V>
      Returns:

      true if object is a key in this Hashtable, false otherwise.

      See also
      • #contains

      • java.lang.Object#equals

    • containsValue

      public boolean containsValue(Object value)

      Searches this Hashtable for the specified value.

      Parameters
      • value: the object to search for.
      Returns
      Specified by:
      containsValue in interface Map<K,V>
      Returns:
      true if value is a value of this Hashtable, false otherwise.
    • elements

      public Enumeration<V> elements()

      Returns an enumeration on the values of this Hashtable. The results of the Enumeration may be affected if the contents of this Hashtable are modified.

      Returns

      an enumeration of the values of this Hashtable.

      See also
      • #keys

      • #size

      • Enumeration

      Specified by:
      elements in class Dictionary<K,V>
    • entrySet

      public Set<Map.Entry<K,V>> entrySet()

      Returns a set of the mappings contained in this Hashtable. Each element in the set is a Map.Entry. The set is backed by this Hashtable so changes to one are reflected by the other. The set does not support adding.

      Returns

      a set of the mappings.

      Specified by:
      entrySet in interface Map<K,V>
    • equals

      public boolean equals(Object object)

      Compares this Hashtable with the specified object and indicates if they are equal. In order to be equal, object must be an instance of Map and contain the same key/value pairs.

      Parameters
      • object: the object to compare with this object.
      Returns
      Specified by:
      equals in interface Map<K,V>
      Overrides:
      equals in class Object
      Returns:

      true if the specified object is equal to this Map, false otherwise.

      See also
      • #hashCode
    • get

      public V get(Object key)

      Returns the value associated with the specified key in this Hashtable.

      Parameters
      • key: the key of the value returned.
      Returns
      Specified by:
      get in interface Map<K,V>
      Specified by:
      get in class Dictionary<K,V>
      Returns:

      the value associated with the specified key, or null if the specified key does not exist.

      See also
      • #put
    • hashCode

      public int hashCode()
      Description copied from interface: Map

      Returns an integer hash code for the receiver. Objects which are equal return the same value for this method.

      Returns

      the receiver's hash.

      See also
      • #equals(Object)
      Specified by:
      hashCode in interface Map<K,V>
      Overrides:
      hashCode in class Object
    • isEmpty

      public boolean isEmpty()

      Returns true if this Hashtable has no key/value pairs.

      Returns
      Specified by:
      isEmpty in interface Map<K,V>
      Specified by:
      isEmpty in class Dictionary<K,V>
      Returns:

      true if this Hashtable has no key/value pairs, false otherwise.

      See also
      • #size
    • keys

      public Enumeration<K> keys()

      Returns an enumeration on the keys of this Hashtable instance. The results of the enumeration may be affected if the contents of this Hashtable are modified.

      Returns

      an enumeration of the keys of this Hashtable.

      See also
      • #elements

      • #size

      • Enumeration

      Specified by:
      keys in class Dictionary<K,V>
    • keySet

      public Set<K> keySet()

      Returns a set of the keys contained in this Hashtable. The set is backed by this Hashtable so changes to one are reflected by the other. The set does not support adding.

      Returns

      a set of the keys.

      Specified by:
      keySet in interface Map<K,V>
    • put

      public V put(K key, V value)

      Associate the specified value with the specified key in this Hashtable. If the key already exists, the old value is replaced. The key and value cannot be null.

      Parameters
      • key: the key to add.

      • value: the value to add.

      Returns
      Specified by:
      put in interface Map<K,V>
      Specified by:
      put in class Dictionary<K,V>
      Returns:

      the old value associated with the specified key, or null if the key did not exist.

      See also
      • #elements

      • #get

      • #keys

      • java.lang.Object#equals

    • putAll

      public void putAll(Map<? extends K, ? extends V> map)

      Copies every mapping to this Hashtable from the specified map.

      Parameters
      • map: the map to copy mappings from.
      Specified by:
      putAll in interface Map<K,V>
    • rehash

      protected void rehash()
      Increases the capacity of this Hashtable. This method is called when the size of this Hashtable exceeds the load factor.
    • remove

      public V remove(Object key)

      Removes the key/value pair with the specified key from this Hashtable.

      Parameters
      • key: the key to remove.
      Returns
      Specified by:
      remove in interface Map<K,V>
      Specified by:
      remove in class Dictionary<K,V>
      Returns:

      the value associated with the specified key, or null if the specified key did not exist.

      See also
      • #get

      • #put

    • size

      public int size()

      Returns the number of key/value pairs in this Hashtable.

      Returns

      the number of key/value pairs in this Hashtable.

      See also
      • #elements

      • #keys

      Specified by:
      size in interface Map<K,V>
      Specified by:
      size in class Dictionary<K,V>
    • toString

      public String toString()

      Returns the string representation of this Hashtable.

      Returns

      the string representation of this Hashtable.

      Overrides:
      toString in class Object
    • values

      public Collection<V> values()

      Returns a collection of the values contained in this Hashtable. The collection is backed by this Hashtable so changes to one are reflected by the other. The collection does not support adding.

      Returns

      a collection of the values.

      Specified by:
      values in interface Map<K,V>