Package gnu.trove.impl.hash
Class TShortLongHash
java.lang.Object
gnu.trove.impl.hash.THash
gnu.trove.impl.hash.TPrimitiveHash
gnu.trove.impl.hash.TShortLongHash
- All Implemented Interfaces:
Externalizable,Serializable
- Direct Known Subclasses:
TShortLongHashMap
An open addressed hashing implementation for short/long primitive entries.
Created: Sun Nov 4 08:56:06 2001
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionshort[]the set of shortsprotected booleanprotected shortkey that represents null NOTE: should not be modified after the Hash is created, but is not final because of Externalizationprotected longvalue 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, REMOVEDFields 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#Hashinstance with the default capacity and load factor.TShortLongHash(int initialCapacity) Creates a newT#E#Hashinstance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.TShortLongHash(int initialCapacity, float loadFactor) Creates a newTShortLongHashinstance with a prime value at or near the specified capacity and load factor.TShortLongHash(int initialCapacity, float loadFactor, short no_entry_key, long no_entry_value) Creates a newTShortLongHashinstance with a prime value at or near the specified capacity and load factor. -
Method Summary
Modifier and TypeMethodDescriptionbooleancontains(short val) Searches the set for valbooleanforEach(TShortProcedure procedure) Executes procedure for each key in the map.shortReturns the value that is used to represent null as a key.longReturns the value that is used to represent null.protected intindex(short key) Locates the index of val.protected intinsertKey(short val) Locates the index at which val can be inserted.voidprotected 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.voidprotected intXinsertKey(short key) Methods inherited from class gnu.trove.impl.hash.TPrimitiveHash
capacityMethods 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 short[] _setthe set of shorts -
no_entry_key
protected short 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 long 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
-
TShortLongHash
public TShortLongHash()Creates a newT#E#Hashinstance with the default capacity and load factor. -
TShortLongHash
public TShortLongHash(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
-
TShortLongHash
public TShortLongHash(int initialCapacity, float loadFactor) Creates a newTShortLongHashinstance 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.
-
TShortLongHash
public TShortLongHash(int initialCapacity, float loadFactor, short no_entry_key, long no_entry_value) Creates a newTShortLongHashinstance 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 short 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 long 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(short val) Searches the set for val- Parameters:
val- anshortvalue- Returns:
- a
booleanvalue
-
forEach
Executes procedure for each key in the map.- Parameters:
procedure- aTShortProcedurevalue- 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(short key) Locates the index of val.- Parameters:
key- anshortvalue- Returns:
- the index of val or -1 if it isn't in the set.
-
insertKey
protected int insertKey(short 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- anshortvalue- Returns:
- an
intvalue
-
XinsertKey
protected int XinsertKey(short key) -
writeExternal
- Specified by:
writeExternalin interfaceExternalizable- Overrides:
writeExternalin classTHash- Throws:
IOException
-
readExternal
- Specified by:
readExternalin interfaceExternalizable- Overrides:
readExternalin classTHash- Throws:
IOExceptionClassNotFoundException
-