Package gnu.trove.impl.hash
Class TLongShortHash
java.lang.Object
gnu.trove.impl.hash.THash
gnu.trove.impl.hash.TPrimitiveHash
gnu.trove.impl.hash.TLongShortHash
- All Implemented Interfaces:
Externalizable
,Serializable
- Direct Known Subclasses:
TLongShortHashMap
An open addressed hashing implementation for long/short primitive entries.
Created: Sun Nov 4 08:56:06 2001
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionlong[]
the set of longsprotected boolean
protected long
key that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalizationprotected short
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.TLongShortHash
(int initialCapacity) Creates a newT#E#Hash
instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.TLongShortHash
(int initialCapacity, float loadFactor) Creates a newTLongShortHash
instance with a prime value at or near the specified capacity and load factor.TLongShortHash
(int initialCapacity, float loadFactor, long no_entry_key, short no_entry_value) Creates a newTLongShortHash
instance with a prime value at or near the specified capacity and load factor. -
Method Summary
Modifier and TypeMethodDescriptionboolean
contains
(long val) Searches the set for valboolean
forEach
(TLongProcedure procedure) Executes procedure for each key in the map.long
Returns the value that is used to represent null as a key.short
Returns the value that is used to represent null.protected int
index
(long key) Locates the index of val.protected int
insertKey
(long 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
(long 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 long[] _setthe set of longs -
no_entry_key
protected long 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 short 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
-
TLongShortHash
public TLongShortHash()Creates a newT#E#Hash
instance with the default capacity and load factor. -
TLongShortHash
public TLongShortHash(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
-
TLongShortHash
public TLongShortHash(int initialCapacity, float loadFactor) Creates a newTLongShortHash
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.
-
TLongShortHash
public TLongShortHash(int initialCapacity, float loadFactor, long no_entry_key, short no_entry_value) Creates a newTLongShortHash
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 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 short 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(long val) Searches the set for val- Parameters:
val
- anlong
value- Returns:
- a
boolean
value
-
forEach
Executes procedure for each key in the map.- Parameters:
procedure
- aTLongProcedure
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(long key) Locates the index of val.- Parameters:
key
- anlong
value- Returns:
- the index of val or -1 if it isn't in the set.
-
insertKey
protected int insertKey(long 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
- anlong
value- Returns:
- an
int
value
-
XinsertKey
protected int XinsertKey(long 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
-