gnu.trove.impl.hash
Class TIntFloatHash

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

public abstract class TIntFloatHash
extends TPrimitiveHash

An open addressed hashing implementation for int/float 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
 int[] _set
          the set of ints
protected  int 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  float 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
TIntFloatHash()
          Creates a new T#E#Hash instance with the default capacity and load factor.
TIntFloatHash(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.
TIntFloatHash(int initialCapacity, float loadFactor)
          Creates a new TIntFloatHash instance with a prime value at or near the specified capacity and load factor.
TIntFloatHash(int initialCapacity, float loadFactor, int no_entry_key, float no_entry_value)
          Creates a new TIntFloatHash instance with a prime value at or near the specified capacity and load factor.
 
Method Summary
 boolean contains(int val)
          Searches the set for val
 boolean forEach(TIntProcedure procedure)
          Executes procedure for each key in the map.
 int getNoEntryKey()
          Returns the value that is used to represent null as a key.
 float getNoEntryValue()
          Returns the value that is used to represent null.
protected  int index(int key)
          Locates the index of val.
protected  int insertionIndex(int 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 int[] _set
the set of ints


no_entry_key

protected int 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 float 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

TIntFloatHash

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


TIntFloatHash

public TIntFloatHash(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

TIntFloatHash

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

TIntFloatHash

public TIntFloatHash(int initialCapacity,
                     float loadFactor,
                     int no_entry_key,
                     float no_entry_value)
Creates a new TIntFloatHash 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 int 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 float 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(int val)
Searches the set for val

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

forEach

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

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

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

insertionIndex

protected int insertionIndex(int 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 int 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