Package gnu.trove.impl.hash
Class TDoubleByteHash
- java.lang.Object
-
- gnu.trove.impl.hash.THash
-
- gnu.trove.impl.hash.TPrimitiveHash
-
- gnu.trove.impl.hash.TDoubleByteHash
-
- All Implemented Interfaces:
java.io.Externalizable,java.io.Serializable
- Direct Known Subclasses:
TDoubleByteHashMap
public abstract class TDoubleByteHash extends TPrimitiveHash
An open addressed hashing implementation for double/byte primitive entries. Created: Sun Nov 4 08:56:06 2001- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description double[]_setthe set of doublesprotected booleanconsumeFreeSlotprotected doubleno_entry_keykey that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalizationprotected byteno_entry_valuevalue 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
Constructors Constructor Description TDoubleByteHash()Creates a newT#E#Hashinstance with the default capacity and load factor.TDoubleByteHash(int initialCapacity)Creates a newT#E#Hashinstance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.TDoubleByteHash(int initialCapacity, float loadFactor)Creates a newTDoubleByteHashinstance with a prime value at or near the specified capacity and load factor.TDoubleByteHash(int initialCapacity, float loadFactor, double no_entry_key, byte no_entry_value)Creates a newTDoubleByteHashinstance with a prime value at or near the specified capacity and load factor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancontains(double val)Searches the set for valbooleanforEach(TDoubleProcedure procedure)Executes procedure for each key in the map.doublegetNoEntryKey()Returns the value that is used to represent null as a key.bytegetNoEntryValue()Returns the value that is used to represent null.protected intindex(double key)Locates the index of val.protected intinsertKey(double val)Locates the index at which val can be inserted.voidreadExternal(java.io.ObjectInput in)protected voidremoveAt(int index)Releases the element currently stored at index.protected intsetUp(int initialCapacity)initializes the hashtable to a prime capacity which is at least initialCapacity + 1.voidwriteExternal(java.io.ObjectOutput out)protected intXinsertKey(double key)-
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, fastCeil, getAutoCompactionFactor, isEmpty, postInsertHook, reenableAutoCompaction, rehash, saturatedCast, setAutoCompactionFactor, size, tempDisableAutoCompaction, trimToSize
-
-
-
-
Field Detail
-
_set
public transient double[] _set
the set of doubles
-
no_entry_key
protected double 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 byte no_entry_value
value that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalization
-
consumeFreeSlot
protected boolean consumeFreeSlot
-
-
Constructor Detail
-
TDoubleByteHash
public TDoubleByteHash()
Creates a newT#E#Hashinstance with the default capacity and load factor.
-
TDoubleByteHash
public TDoubleByteHash(int initialCapacity)
Creates a newT#E#Hashinstance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.- Parameters:
initialCapacity- anintvalue
-
TDoubleByteHash
public TDoubleByteHash(int initialCapacity, float loadFactor)Creates a newTDoubleByteHashinstance 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.
-
TDoubleByteHash
public TDoubleByteHash(int initialCapacity, float loadFactor, double no_entry_key, byte no_entry_value)Creates a newTDoubleByteHashinstance 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 double 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 byte 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:
setUpin classTPrimitiveHash- Parameters:
initialCapacity- anintvalue- Returns:
- the actual capacity chosen
-
contains
public boolean contains(double val)
Searches the set for val- Parameters:
val- andoublevalue- Returns:
- a
booleanvalue
-
forEach
public boolean forEach(TDoubleProcedure procedure)
Executes procedure for each key in the map.- Parameters:
procedure- aTDoubleProcedurevalue- 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:
removeAtin classTPrimitiveHash- Parameters:
index- anintvalue
-
index
protected int index(double key)
Locates the index of val.- Parameters:
key- andoublevalue- Returns:
- the index of val or -1 if it isn't in the set.
-
insertKey
protected int insertKey(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- andoublevalue- Returns:
- an
intvalue
-
XinsertKey
protected int XinsertKey(double key)
-
writeExternal
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException- Specified by:
writeExternalin interfacejava.io.Externalizable- Overrides:
writeExternalin classTHash- Throws:
java.io.IOException
-
readExternal
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException- Specified by:
readExternalin interfacejava.io.Externalizable- Overrides:
readExternalin classTHash- Throws:
java.io.IOExceptionjava.lang.ClassNotFoundException
-
-