Package gnu.trove

Class TDoubleShortHashMap

  • All Implemented Interfaces:
    TDoubleHashingStrategy, java.io.Externalizable, java.io.Serializable, java.lang.Cloneable

    public class TDoubleShortHashMap
    extends TDoubleHash
    implements java.io.Externalizable
    An open addressed Map implementation for double keys and short values. Created: Sun Nov 4 08:52:45 2001
    Author:
    Eric D. Friedman
    See Also:
    Serialized Form
    • Field Detail

      • _values

        protected transient short[] _values
        the values of the map
    • Constructor Detail

      • TDoubleShortHashMap

        public TDoubleShortHashMap()
        Creates a new TDoubleShortHashMap instance with the default capacity and load factor.
      • TDoubleShortHashMap

        public TDoubleShortHashMap​(int initialCapacity)
        Creates a new TDoubleShortHashMap instance with a prime capacity equal to or greater than initialCapacity and with the default load factor.
        Parameters:
        initialCapacity - an int value
      • TDoubleShortHashMap

        public TDoubleShortHashMap​(int initialCapacity,
                                   float loadFactor)
        Creates a new TDoubleShortHashMap instance with a prime capacity equal to or greater than initialCapacity and with the specified load factor.
        Parameters:
        initialCapacity - an int value
        loadFactor - a float value
      • TDoubleShortHashMap

        public TDoubleShortHashMap​(TDoubleHashingStrategy strategy)
        Creates a new TDoubleShortHashMap instance with the default capacity and load factor.
        Parameters:
        strategy - used to compute hash codes and to compare keys.
      • TDoubleShortHashMap

        public TDoubleShortHashMap​(int initialCapacity,
                                   TDoubleHashingStrategy strategy)
        Creates a new TDoubleShortHashMap instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.
        Parameters:
        initialCapacity - an int value
        strategy - used to compute hash codes and to compare keys.
      • TDoubleShortHashMap

        public TDoubleShortHashMap​(int initialCapacity,
                                   float loadFactor,
                                   TDoubleHashingStrategy strategy)
        Creates a new TDoubleShortHashMap instance with a prime value at or near the specified capacity and load factor.
        Parameters:
        initialCapacity - used to find a prime capacity for the table.
        loadFactor - used to calculate the threshold over which rehashing takes place.
        strategy - used to compute hash codes and to compare keys.
    • Method Detail

      • clone

        public java.lang.Object clone()
        Overrides:
        clone in class TDoubleHash
        Returns:
        a deep clone of this collection
      • iterator

        public TDoubleShortIterator iterator()
        Returns:
        a TDoubleShortIterator with access to this map's keys and values
      • setUp

        protected int setUp​(int initialCapacity)
        initializes the hashtable to a prime capacity which is at least initialCapacity + 1.
        Overrides:
        setUp in class TDoubleHash
        Parameters:
        initialCapacity - an int value
        Returns:
        the actual capacity chosen
      • put

        public short put​(double key,
                         short value)
        Inserts a key/value pair into the map.
        Parameters:
        key - an double value
        value - an short value
        Returns:
        the previous value associated with key, or (double)0 if none was found.
      • putIfAbsent

        public short putIfAbsent​(double key,
                                 short value)
        Inserts a key/value pair into the map if the specified key is not already associated with a value.
        Parameters:
        key - an double value
        value - an short value
        Returns:
        the previous value associated with key, or (double)0 if none was found.
      • putAll

        public void putAll​(TDoubleShortHashMap map)
        Put all the entries from the given map into this map.
        Parameters:
        map - The map from which entries will be obtained to put into this map.
      • rehash

        protected void rehash​(int newCapacity)
        rehashes the map to the new capacity.
        Specified by:
        rehash in class THash
        Parameters:
        newCapacity - an int value
      • get

        public short get​(double key)
        retrieves the value for key
        Parameters:
        key - an double value
        Returns:
        the value of key or (double)0 if no such mapping exists.
      • clear

        public void clear()
        Empties the map.
        Overrides:
        clear in class THash
      • remove

        public short remove​(double key)
        Deletes a key/value pair from the map.
        Parameters:
        key - an double value
        Returns:
        an short value, or (double)0 if no mapping for key exists
      • equals

        public boolean equals​(java.lang.Object other)
        Compares this map with another map for equality of their stored entries.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        other - an Object value
        Returns:
        a boolean value
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • removeAt

        protected void removeAt​(int index)
        removes the mapping at index from the map.
        Overrides:
        removeAt in class TDoubleHash
        Parameters:
        index - an int value
      • getValues

        public short[] getValues()
        Returns the values of the map.
        Returns:
        a Collection value
      • keys

        public double[] keys()
        returns the keys of the map.
        Returns:
        a Set value
      • keys

        public double[] keys​(double[] a)
        returns the keys of the map.
        Parameters:
        a - the array into which the elements of the list are to be stored, if it is big enough; otherwise, a new array of the same type is allocated for this purpose.
        Returns:
        a Set value
      • containsValue

        public boolean containsValue​(short val)
        checks for the presence of val in the values of the map.
        Parameters:
        val - an short value
        Returns:
        a boolean value
      • containsKey

        public boolean containsKey​(double key)
        checks for the present of key in the keys of the map.
        Parameters:
        key - an double value
        Returns:
        a boolean value
      • forEachKey

        public boolean forEachKey​(TDoubleProcedure procedure)
        Executes procedure for each key in the map.
        Parameters:
        procedure - a TDoubleProcedure value
        Returns:
        false if the loop over the keys terminated because the procedure returned false for some key.
      • forEachValue

        public boolean forEachValue​(TShortProcedure procedure)
        Executes procedure for each value in the map.
        Parameters:
        procedure - a TShortProcedure value
        Returns:
        false if the loop over the values terminated because the procedure returned false for some value.
      • forEachEntry

        public boolean forEachEntry​(TDoubleShortProcedure procedure)
        Executes procedure for each key/value entry in the map.
        Parameters:
        procedure - a TODoubleShortProcedure value
        Returns:
        false if the loop over the entries terminated because the procedure returned false for some entry.
      • retainEntries

        public boolean retainEntries​(TDoubleShortProcedure procedure)
        Retains only those entries in the map for which the procedure returns a true value.
        Parameters:
        procedure - determines which entries to keep
        Returns:
        true if the map was modified.
      • transformValues

        public void transformValues​(TShortFunction function)
        Transform the values in this map using function.
        Parameters:
        function - a TShortFunction value
      • increment

        public boolean increment​(double key)
        Increments the primitive value mapped to key by 1
        Parameters:
        key - the key of the value to increment
        Returns:
        true if a mapping was found and modified.
      • adjustValue

        public boolean adjustValue​(double key,
                                   short amount)
        Adjusts the primitive value mapped to key.
        Parameters:
        key - the key of the value to increment
        amount - the amount to adjust the value by.
        Returns:
        true if a mapping was found and modified.
      • adjustOrPutValue

        public short adjustOrPutValue​(double key,
                                      short adjust_amount,
                                      short put_amount)
        Adjusts the primitive value mapped to the key if the key is present in the map. Otherwise, the initial_value is put in the map.
        Parameters:
        key - the key of the value to increment
        adjust_amount - the amount to adjust the value by
        put_amount - the value put into the map if the key is not initial present
        Returns:
        the value present in the map after the adjustment or put operation
        Since:
        2.0b1
      • writeExternal

        public void writeExternal​(java.io.ObjectOutput out)
                           throws java.io.IOException
        Specified by:
        writeExternal in interface java.io.Externalizable
        Overrides:
        writeExternal in class THash
        Throws:
        java.io.IOException
      • readExternal

        public void readExternal​(java.io.ObjectInput in)
                          throws java.io.IOException,
                                 java.lang.ClassNotFoundException
        Specified by:
        readExternal in interface java.io.Externalizable
        Overrides:
        readExternal in class THash
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object