gnu.trove

## Class TShortHash

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

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

Direct Known Subclasses:
  TShortByteHashMap, TShortDoubleHashMap, TShortFloatHashMap, TShortHashSet, TShortIntHashMap, TShortLongHashMap, TShortObjectHashMap, TShortShortHashMap

    public abstract class TShortHash
    extends TPrimitiveHash
    implements TShortHashingStrategy

An open addressed hashing implementation for short 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 TShortHashingStrategy` `_hashingStrategy` strategy used to hash values in this collection
`protected short[]` `_set` the set of shorts

### 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
`TShortHash()` Creates a new `TShortHash` instance with the default capacity and load factor.
`TShortHash(int initialCapacity)` Creates a new `TShortHash` instance whose capacity is the next highest prime above `initialCapacity + 1` unless that value is already prime.
`TShortHash(int initialCapacity, float loadFactor)` Creates a new `TShortHash` instance with a prime value at or near the specified capacity and load factor.
`TShortHash(int initialCapacity, float loadFactor, TShortHashingStrategy strategy)` Creates a new `TShortHash` instance with a prime value at or near the specified capacity and load factor.
`TShortHash(int initialCapacity, TShortHashingStrategy strategy)` Creates a new `TShortHash` instance whose capacity is the next highest prime above `initialCapacity + 1` unless that value is already prime.
`TShortHash(TShortHashingStrategy strategy)` Creates a new `TShortHash` instance with the default capacity and load factor.

### Method Summary

Methods
`java.lang.Object` `clone()`
`int` `computeHashCode(short val)` Default implementation of TShortHashingStrategy: delegates hashing to HashFunctions.hash(short).
`boolean` `contains(short val)` Searches the set for `val`
`boolean` `forEach(TShortProcedure procedure)` Executes `procedure` for each element in the set.
`protected int` `index(short val)` Locates the index of `val`.
`protected int` `insertionIndex(short 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 short[] _set

the set of shorts

#### _hashingStrategy

    protected TShortHashingStrategy _hashingStrategy

strategy used to hash values in this collection

### Constructor Detail

#### TShortHash

    public TShortHash()

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

#### TShortHash

    public TShortHash(int initialCapacity)

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

Parameters:
  `initialCapacity` - an `int` value

#### TShortHash

    public TShortHash(int initialCapacity,
              float loadFactor)

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

#### TShortHash

    public TShortHash(TShortHashingStrategy strategy)

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

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

#### TShortHash

    public TShortHash(int initialCapacity,
              TShortHashingStrategy strategy)

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

#### TShortHash

    public TShortHash(int initialCapacity,
              float loadFactor,
              TShortHashingStrategy strategy)

Creates a new `TShortHash` 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(short val)

Searches the set for `val`

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

#### forEach

    public boolean forEach(TShortProcedure 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(short val)

Locates the index of `val`.

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

#### insertionIndex

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

#### computeHashCode

    public final int computeHashCode(short val)

Default implementation of TShortHashingStrategy: delegates hashing to HashFunctions.hash(short).

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