Class IdentityHashtable

java.lang.Object
java.util.Dictionary
com.sun.corba.se.impl.util.IdentityHashtable

public final class IdentityHashtable extends Dictionary
IdentityHashtable is a modified copy of the 1.1.6 Hashtable class which does not rely on the hashCode() and equals() methods of the key or value; instead, it uses the System.identityHashcode() method and pointer comparison. In addition, all synchronization has been removed.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new, empty hashtable with a default capacity and load factor.
    IdentityHashtable(int initialCapacity)
    Constructs a new, empty hashtable with the specified initial capacity and default load factor.
    IdentityHashtable(int initialCapacity, float loadFactor)
    Constructs a new, empty hashtable with the specified initial capacity and the specified load factor.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Clears this hashtable so that it contains no keys.
    boolean
    Tests if some key maps into the specified value in this hashtable.
    boolean
    Tests if the specified object is a key in this hashtable.
    Returns an enumeration of the values in this hashtable.
    get(Object key)
    Returns the value to which the specified key is mapped in this hashtable.
    boolean
    Tests if this hashtable maps no keys to values.
    Returns an enumeration of the keys in this hashtable.
    put(Object key, Object value)
    Maps the specified key to the specified value in this hashtable.
    protected void
    Rehashes the contents of the hashtable into a hashtable with a larger capacity.
    Removes the key (and its corresponding value) from this hashtable.
    int
    Returns the number of keys in this hashtable.
    Returns a rather long string representation of this hashtable.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • IdentityHashtable

      public IdentityHashtable(int initialCapacity, float loadFactor)
      Constructs a new, empty hashtable with the specified initial capacity and the specified load factor.
      Parameters:
      initialCapacity - the initial capacity of the hashtable.
      loadFactor - a number between 0.0 and 1.0.
      Throws:
      IllegalArgumentException - if the initial capacity is less than or equal to zero, or if the load factor is less than or equal to zero.
      Since:
      JDK1.0
    • IdentityHashtable

      public IdentityHashtable(int initialCapacity)
      Constructs a new, empty hashtable with the specified initial capacity and default load factor.
      Parameters:
      initialCapacity - the initial capacity of the hashtable.
      Since:
      JDK1.0
    • IdentityHashtable

      public IdentityHashtable()
      Constructs a new, empty hashtable with a default capacity and load factor.
      Since:
      JDK1.0
  • Method Details

    • size

      public int size()
      Returns the number of keys in this hashtable.
      Specified by:
      size in class Dictionary
      Returns:
      the number of keys in this hashtable.
      Since:
      JDK1.0
    • isEmpty

      public boolean isEmpty()
      Tests if this hashtable maps no keys to values.
      Specified by:
      isEmpty in class Dictionary
      Returns:
      true if this hashtable maps no keys to values; false otherwise.
      Since:
      JDK1.0
    • keys

      public Enumeration keys()
      Returns an enumeration of the keys in this hashtable.
      Specified by:
      keys in class Dictionary
      Returns:
      an enumeration of the keys in this hashtable.
      Since:
      JDK1.0
      See Also:
    • elements

      public Enumeration elements()
      Returns an enumeration of the values in this hashtable. Use the Enumeration methods on the returned object to fetch the elements sequentially.
      Specified by:
      elements in class Dictionary
      Returns:
      an enumeration of the values in this hashtable.
      Since:
      JDK1.0
      See Also:
    • contains

      public boolean contains(Object value)
      Tests if some key maps into the specified value in this hashtable. This operation is more expensive than the containsKey method.
      Parameters:
      value - a value to search for.
      Returns:
      true if some key maps to the value argument in this hashtable; false otherwise.
      Throws:
      NullPointerException - if the value is null.
      Since:
      JDK1.0
      See Also:
    • containsKey

      public boolean containsKey(Object key)
      Tests if the specified object is a key in this hashtable.
      Parameters:
      key - possible key.
      Returns:
      true if the specified object is a key in this hashtable; false otherwise.
      Since:
      JDK1.0
      See Also:
    • get

      public Object get(Object key)
      Returns the value to which the specified key is mapped in this hashtable.
      Specified by:
      get in class Dictionary
      Parameters:
      key - a key in the hashtable.
      Returns:
      the value to which the key is mapped in this hashtable; null if the key is not mapped to any value in this hashtable.
      Since:
      JDK1.0
      See Also:
    • rehash

      protected void rehash()
      Rehashes the contents of the hashtable into a hashtable with a larger capacity. This method is called automatically when the number of keys in the hashtable exceeds this hashtable's capacity and load factor.
      Since:
      JDK1.0
    • put

      public Object put(Object key, Object value)
      Maps the specified key to the specified value in this hashtable. Neither the key nor the value can be null.

      The value can be retrieved by calling the get method with a key that is equal to the original key.

      Specified by:
      put in class Dictionary
      Parameters:
      key - the hashtable key.
      value - the value.
      Returns:
      the previous value of the specified key in this hashtable, or null if it did not have one.
      Throws:
      NullPointerException - if the key or value is null.
      Since:
      JDK1.0
      See Also:
    • remove

      public Object remove(Object key)
      Removes the key (and its corresponding value) from this hashtable. This method does nothing if the key is not in the hashtable.
      Specified by:
      remove in class Dictionary
      Parameters:
      key - the key that needs to be removed.
      Returns:
      the value to which the key had been mapped in this hashtable, or null if the key did not have a mapping.
      Since:
      JDK1.0
    • clear

      public void clear()
      Clears this hashtable so that it contains no keys.
      Since:
      JDK1.0
    • toString

      public String toString()
      Returns a rather long string representation of this hashtable.
      Overrides:
      toString in class Object
      Returns:
      a string representation of this hashtable.
      Since:
      JDK1.0