Package gnu.trove

Class TDoubleHash

All Implemented Interfaces:
TDoubleHashingStrategy, Externalizable, Serializable, Cloneable
Direct Known Subclasses:
TDoubleByteHashMap, TDoubleDoubleHashMap, TDoubleFloatHashMap, TDoubleHashSet, TDoubleIntHashMap, TDoubleLongHashMap, TDoubleObjectHashMap, TDoubleShortHashMap

public abstract class TDoubleHash extends TPrimitiveHash implements TDoubleHashingStrategy
An open addressed hashing implementation for double primitives. Created: Sun Nov 4 08:56:06 2001
Version:
$Id: PHash.template,v 1.2 2007/06/29 22:39:46 robeden Exp $
Author:
Eric D. Friedman
See Also:
  • Field Details

    • _set

      protected transient double[] _set
      the set of doubles
    • _hashingStrategy

      protected TDoubleHashingStrategy _hashingStrategy
      strategy used to hash values in this collection
  • Constructor Details

    • TDoubleHash

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

      public TDoubleHash(int initialCapacity)
      Creates a new TDoubleHash instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.
      Parameters:
      initialCapacity - an int value
    • TDoubleHash

      public TDoubleHash(int initialCapacity, float loadFactor)
      Creates a new TDoubleHash 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.
    • TDoubleHash

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

      public TDoubleHash(int initialCapacity, TDoubleHashingStrategy strategy)
      Creates a new TDoubleHash 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.
    • TDoubleHash

      public TDoubleHash(int initialCapacity, float loadFactor, TDoubleHashingStrategy strategy)
      Creates a new TDoubleHash 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 Details

    • clone

      public Object clone()
      Overrides:
      clone in class TPrimitiveHash
      Returns:
      a deep clone of this collection
    • setUp

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

      public boolean contains(double val)
      Searches the set for val
      Parameters:
      val - an double value
      Returns:
      a boolean value
    • forEach

      public boolean forEach(TDoubleProcedure procedure)
      Executes procedure for each element in the set.
      Parameters:
      procedure - a TObjectProcedure value
      Returns:
      false if the loop over the set terminated because the procedure returned false for some value.
    • removeAt

      protected void removeAt(int index)
      Releases the element currently stored at index.
      Overrides:
      removeAt in class TPrimitiveHash
      Parameters:
      index - an int value
    • index

      protected int index(double val)
      Locates the index of val.
      Parameters:
      val - an double value
      Returns:
      the index of val or -1 if it isn't in the set.
    • insertionIndex

      protected int insertionIndex(double val)
      Locates the index at which val can be inserted. if there is already a value equal()ing val in the set, returns that value as a negative integer.
      Parameters:
      val - an double value
      Returns:
      an int value
    • computeHashCode

      public final int computeHashCode(double val)
      Default implementation of TDoubleHashingStrategy: delegates hashing to HashFunctions.hash(double).
      Specified by:
      computeHashCode in interface TDoubleHashingStrategy
      Parameters:
      val - the value to hash
      Returns:
      the hashcode.