Package gnu.trove.impl.hash
Class TFloatByteHash
java.lang.Object
gnu.trove.impl.hash.THash
gnu.trove.impl.hash.TPrimitiveHash
gnu.trove.impl.hash.TFloatByteHash
- All Implemented Interfaces:
Externalizable
,Serializable
- Direct Known Subclasses:
TFloatByteHashMap
An open addressed hashing implementation for float/byte primitive entries.
Created: Sun Nov 4 08:56:06 2001
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionfloat[]
the set of floatsprotected boolean
protected float
key that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalizationprotected byte
value that represents null NOTE: should not be modified after the Hash is created, but is not final because of ExternalizationFields 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
ConstructorsConstructorDescriptionCreates a newT#E#Hash
instance with the default capacity and load factor.TFloatByteHash
(int initialCapacity) Creates a newT#E#Hash
instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.TFloatByteHash
(int initialCapacity, float loadFactor) Creates a newTFloatByteHash
instance with a prime value at or near the specified capacity and load factor.TFloatByteHash
(int initialCapacity, float loadFactor, float no_entry_key, byte no_entry_value) Creates a newTFloatByteHash
instance with a prime value at or near the specified capacity and load factor. -
Method Summary
Modifier and TypeMethodDescriptionboolean
contains
(float val) Searches the set for valboolean
forEach
(TFloatProcedure procedure) Executes procedure for each key in the map.float
Returns the value that is used to represent null as a key.byte
Returns the value that is used to represent null.protected int
index
(float key) Locates the index of val.protected int
insertKey
(float val) Locates the index at which val can be inserted.void
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
protected int
XinsertKey
(float 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 Details
-
_set
public transient float[] _setthe set of floats -
no_entry_key
protected float no_entry_keykey 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_valuevalue 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 Details
-
TFloatByteHash
public TFloatByteHash()Creates a newT#E#Hash
instance with the default capacity and load factor. -
TFloatByteHash
public TFloatByteHash(int initialCapacity) Creates a newT#E#Hash
instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.- Parameters:
initialCapacity
- anint
value
-
TFloatByteHash
public TFloatByteHash(int initialCapacity, float loadFactor) Creates a newTFloatByteHash
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.
-
TFloatByteHash
public TFloatByteHash(int initialCapacity, float loadFactor, float no_entry_key, byte no_entry_value) Creates a newTFloatByteHash
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 Details
-
getNoEntryKey
public float 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:
setUp
in classTPrimitiveHash
- Parameters:
initialCapacity
- anint
value- Returns:
- the actual capacity chosen
-
contains
public boolean contains(float val) Searches the set for val- Parameters:
val
- anfloat
value- Returns:
- a
boolean
value
-
forEach
Executes procedure for each key in the map.- Parameters:
procedure
- aTFloatProcedure
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 classTPrimitiveHash
- Parameters:
index
- anint
value
-
index
protected int index(float key) Locates the index of val.- Parameters:
key
- anfloat
value- Returns:
- the index of val or -1 if it isn't in the set.
-
insertKey
protected int insertKey(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
- anfloat
value- Returns:
- an
int
value
-
XinsertKey
protected int XinsertKey(float key) -
writeExternal
- Specified by:
writeExternal
in interfaceExternalizable
- Overrides:
writeExternal
in classTHash
- Throws:
IOException
-
readExternal
- Specified by:
readExternal
in interfaceExternalizable
- Overrides:
readExternal
in classTHash
- Throws:
IOException
ClassNotFoundException
-