gnu.trove

## Class TFloatHash

- java.lang.Object
- - gnu.trove.THash
  - - gnu.trove.TPrimitiveHash
    - - gnu.trove.TFloatHash

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

Direct Known Subclasses:
  TFloatByteHashMap, TFloatDoubleHashMap, TFloatFloatHashMap, TFloatHashSet, TFloatIntHashMap, TFloatLongHashMap, TFloatObjectHashMap, TFloatShortHashMap

    public abstract class TFloatHash
    extends TPrimitiveHash
    implements TFloatHashingStrategy

An open addressed hashing implementation for float 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:
  Serialized Form

### Field Summary

Fields
`protected TFloatHashingStrategy` `_hashingStrategy` strategy used to hash values in this collection
`protected float[]` `_set` the set of floats

### Fields inherited from class gnu.trove.TPrimitiveHash

`_states, FREE, FULL, REMOVED`

### Fields inherited from class gnu.trove.THash

`_autoCompactionFactor, _autoCompactRemovesRemaining, _free, _loadFactor, _maxSize, _size, DEFAULT_INITIAL_CAPACITY, DEFAULT_LOAD_FACTOR`

### Constructor Summary

Constructors
Constructor and Description
`TFloatHash()` Creates a new `TFloatHash` instance with the default capacity and load factor.
`TFloatHash(int initialCapacity)` Creates a new `TFloatHash` instance whose capacity is the next highest prime above `initialCapacity + 1` unless that value is already prime.
`TFloatHash(int initialCapacity, float loadFactor)` Creates a new `TFloatHash` instance with a prime value at or near the specified capacity and load factor.
`TFloatHash(int initialCapacity, float loadFactor, TFloatHashingStrategy strategy)` Creates a new `TFloatHash` instance with a prime value at or near the specified capacity and load factor.
`TFloatHash(int initialCapacity, TFloatHashingStrategy strategy)` Creates a new `TFloatHash` instance whose capacity is the next highest prime above `initialCapacity + 1` unless that value is already prime.
`TFloatHash(TFloatHashingStrategy strategy)` Creates a new `TFloatHash` instance with the default capacity and load factor.

### Method Summary

Methods
`java.lang.Object` `clone()`
`int` `computeHashCode(float val)` Default implementation of TFloatHashingStrategy: delegates hashing to HashFunctions.hash(float).
`boolean` `contains(float val)` Searches the set for `val`
`boolean` `forEach(TFloatProcedure procedure)` Executes `procedure` for each element in the set.
`protected int` `index(float val)` Locates the index of `val`.
`protected int` `insertionIndex(float val)` Locates the index at which `val` can be inserted.
`protected void` `removeAt(int index)` Releases the element currently stored at `index`.
`protected int` `setUp(int initialCapacity)` initializes the hashtable to a prime capacity which is at least `initialCapacity + 1`.

### Methods inherited from class gnu.trove.TPrimitiveHash

`capacity`

### Methods inherited from class gnu.trove.THash

`calculateGrownCapacity, clear, compact, ensureCapacity, getAutoCompactionFactor, isEmpty, postInsertHook, readExternal, reenableAutoCompaction, rehash, setAutoCompactionFactor, size, tempDisableAutoCompaction, trimToSize, writeExternal`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### _set

    protected transient float[] _set

the set of floats

#### _hashingStrategy

    protected TFloatHashingStrategy _hashingStrategy

strategy used to hash values in this collection

### Constructor Detail

#### TFloatHash

    public TFloatHash()

Creates a new `TFloatHash` instance with the default capacity and load factor.

#### TFloatHash

    public TFloatHash(int initialCapacity)

Creates a new `TFloatHash` instance whose capacity is the next highest prime above `initialCapacity + 1` unless that value is already prime.

Parameters:
  `initialCapacity` - an `int` value

#### TFloatHash

    public TFloatHash(int initialCapacity,
              float loadFactor)

Creates a new `TFloatHash` 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.

#### TFloatHash

    public TFloatHash(TFloatHashingStrategy strategy)

Creates a new `TFloatHash` instance with the default capacity and load factor.

Parameters:
  `strategy` - used to compute hash codes and to compare keys.

#### TFloatHash

    public TFloatHash(int initialCapacity,
              TFloatHashingStrategy strategy)

Creates a new `TFloatHash` 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.

#### TFloatHash

    public TFloatHash(int initialCapacity,
              float loadFactor,
              TFloatHashingStrategy strategy)

Creates a new `TFloatHash` 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 `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(float val)

Searches the set for `val`

Parameters:
  `val` - an `float` value
Returns:
  a `boolean` value

#### forEach

    public boolean forEach(TFloatProcedure 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(float val)

Locates the index of `val`.

Parameters:
  `val` - an `float` value
Returns:
  the index of `val` or -1 if it isn't in the set.

#### insertionIndex

    protected int insertionIndex(float 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 `float` value
Returns:
  an `int` value

#### computeHashCode

    public final int computeHashCode(float val)

Default implementation of TFloatHashingStrategy: delegates hashing to HashFunctions.hash(float).

Specified by:
  `computeHashCode` in interface `TFloatHashingStrategy`
Parameters:
  `val` - the value to hash
Returns:
  the hashcode.