gnu.trove.impl.hash
Class TLongDoubleHash

java.lang.Object
  extended by gnu.trove.impl.hash.THash
      extended by gnu.trove.impl.hash.TPrimitiveHash
          extended by gnu.trove.impl.hash.TLongDoubleHash
All Implemented Interfaces:
java.io.Externalizable, java.io.Serializable
Direct Known Subclasses:
TLongDoubleHashMap

public abstract class TLongDoubleHash
extends TPrimitiveHash

An open addressed hashing implementation for long/double primitive entries. Created: Sun Nov 4 08:56:06 2001

Version:
$Id: _K__V_Hash.template,v 1.1.2.6 2009/11/07 03:36:44 robeden Exp $
Author:
Eric D. Friedman, Rob Eden, Jeff Randall
See Also:
Serialized Form

Field Summary
 long[] _set
          the set of longs
protected  long no_entry_key
          key that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalization
protected  double no_entry_value
          value that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalization
 
Fields inherited from class gnu.trove.impl.hash.TPrimitiveHash
_states, FREE, FULL, REMOVED
 
Fields inherited from class gnu.trove.impl.hash.THash
_autoCompactionFactor, _autoCompactRemovesRemaining, _autoCompactTemporaryDisable, _free, _loadFactor, _maxSize, _size, DEFAULT_CAPACITY, DEFAULT_LOAD_FACTOR
 
Constructor Summary
TLongDoubleHash()
          Creates a new T#E#Hash instance with the default capacity and load factor.
TLongDoubleHash(int initialCapacity)
          Creates a new T#E#Hash instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.
TLongDoubleHash(int initialCapacity, float loadFactor)
          Creates a new TLongDoubleHash instance with a prime value at or near the specified capacity and load factor.
TLongDoubleHash(int initialCapacity, float loadFactor, long no_entry_key, double no_entry_value)
          Creates a new TLongDoubleHash instance with a prime value at or near the specified capacity and load factor.
 
Method Summary
 boolean contains(long val)
          Searches the set for val
 boolean forEach(TLongProcedure procedure)
          Executes procedure for each key in the map.
 long getNoEntryKey()
          Returns the value that is used to represent null as a key.
 double getNoEntryValue()
          Returns the value that is used to represent null.
protected  int index(long key)
          Locates the index of val.
protected  int insertionIndex(long key)
          Locates the index at which val can be inserted.
 void readExternal(java.io.ObjectInput in)
          
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.
 void writeExternal(java.io.ObjectOutput out)
          
 
Methods inherited from class gnu.trove.impl.hash.TPrimitiveHash
capacity
 
Methods inherited from class gnu.trove.impl.hash.THash
calculateGrownCapacity, clear, compact, computeMaxSize, computeNextAutoCompactionAmount, ensureCapacity, getAutoCompactionFactor, isEmpty, postInsertHook, reenableAutoCompaction, rehash, setAutoCompactionFactor, size, tempDisableAutoCompaction, trimToSize
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_set

public transient long[] _set
the set of longs


no_entry_key

protected long no_entry_key
key that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalization


no_entry_value

protected double no_entry_value
value that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalization

Constructor Detail

TLongDoubleHash

public TLongDoubleHash()
Creates a new T#E#Hash instance with the default capacity and load factor.


TLongDoubleHash

public TLongDoubleHash(int initialCapacity)
Creates a new T#E#Hash instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.

Parameters:
initialCapacity - an int value

TLongDoubleHash

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

TLongDoubleHash

public TLongDoubleHash(int initialCapacity,
                       float loadFactor,
                       long no_entry_key,
                       double no_entry_value)
Creates a new TLongDoubleHash 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.
no_entry_value - value that represents null
Method Detail

getNoEntryKey

public long getNoEntryKey()
Returns the value that is used to represent null as a key. The default value is generally zero, but can be changed during construction of the collection.

Returns:
the value that represents null

getNoEntryValue

public double getNoEntryValue()
Returns the value that is used to represent null. The default value is generally zero, but can be changed during construction of the collection.

Returns:
the value that represents null

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(long val)
Searches the set for val

Parameters:
val - an long value
Returns:
a boolean value

forEach

public boolean forEach(TLongProcedure procedure)
Executes procedure for each key in the map.

Parameters:
procedure - a TLongProcedure 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(long key)
Locates the index of val.

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

insertionIndex

protected int insertionIndex(long key)
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:
key - an long value
Returns:
an int value

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


Copyright © 2007-2011 - Thomas Abeel - All Rights Reserved. SourceForge.netLogo