Package gnu.trove
Class TIntHash
java.lang.Object
gnu.trove.THash
gnu.trove.TPrimitiveHash
gnu.trove.TIntHash
- All Implemented Interfaces:
TIntHashingStrategy
,Externalizable
,Serializable
,Cloneable
- Direct Known Subclasses:
TIntByteHashMap
,TIntDoubleHashMap
,TIntFloatHashMap
,TIntHashSet
,TIntIntHashMap
,TIntLongHashMap
,TIntObjectHashMap
,TIntShortHashMap
An open addressed hashing implementation for int primitives.
Created: Sun Nov 4 08:56:06 2001
- Version:
- $Id: PHash.template,v 1.2 2007/06/29 22:39:46 robeden Exp $
- Author:
- Eric D. Friedman
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected TIntHashingStrategy
strategy used to hash values in this collectionprotected int[]
the set of intsFields inherited from class gnu.trove.TPrimitiveHash
_states, FREE, FULL, REMOVED
Fields inherited from class gnu.trove.THash
_autoCompactionFactor, _autoCompactRemovesRemaining, _free, _loadFactor, _maxSize, _size, DEFAULT_INITIAL_CAPACITY, DEFAULT_LOAD_FACTOR
-
Constructor Summary
ConstructorsConstructorDescriptionTIntHash()
Creates a newTIntHash
instance with the default capacity and load factor.TIntHash
(int initialCapacity) Creates a newTIntHash
instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.TIntHash
(int initialCapacity, float loadFactor) Creates a newTIntHash
instance with a prime value at or near the specified capacity and load factor.TIntHash
(int initialCapacity, float loadFactor, TIntHashingStrategy strategy) Creates a newTIntHash
instance with a prime value at or near the specified capacity and load factor.TIntHash
(int initialCapacity, TIntHashingStrategy strategy) Creates a newTIntHash
instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.TIntHash
(TIntHashingStrategy strategy) Creates a newTIntHash
instance with the default capacity and load factor. -
Method Summary
Modifier and TypeMethodDescriptionclone()
final int
computeHashCode
(int val) Default implementation of TIntHashingStrategy: delegates hashing to HashFunctions.hash(int).boolean
contains
(int val) Searches the set for valboolean
forEach
(TIntProcedure procedure) Executes procedure for each element in the set.protected int
index
(int val) Locates the index of val.protected int
insertionIndex
(int val) Locates the index at which val can be inserted.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.Methods inherited from class gnu.trove.TPrimitiveHash
capacity
Methods inherited from class gnu.trove.THash
calculateGrownCapacity, clear, compact, ensureCapacity, getAutoCompactionFactor, isEmpty, postInsertHook, readExternal, reenableAutoCompaction, rehash, setAutoCompactionFactor, size, tempDisableAutoCompaction, trimToSize, writeExternal
-
Field Details
-
_set
protected transient int[] _setthe set of ints -
_hashingStrategy
strategy used to hash values in this collection
-
-
Constructor Details
-
TIntHash
public TIntHash()Creates a newTIntHash
instance with the default capacity and load factor. -
TIntHash
public TIntHash(int initialCapacity) Creates a newTIntHash
instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.- Parameters:
initialCapacity
- anint
value
-
TIntHash
public TIntHash(int initialCapacity, float loadFactor) Creates a newTIntHash
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.
-
TIntHash
Creates a newTIntHash
instance with the default capacity and load factor.- Parameters:
strategy
- used to compute hash codes and to compare keys.
-
TIntHash
Creates a newTIntHash
instance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.- Parameters:
initialCapacity
- anint
valuestrategy
- used to compute hash codes and to compare keys.
-
TIntHash
Creates a newTIntHash
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.strategy
- used to compute hash codes and to compare keys.
-
-
Method Details
-
clone
- Overrides:
clone
in classTPrimitiveHash
- Returns:
- a deep clone of this collection
-
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(int val) Searches the set for val- Parameters:
val
- anint
value- Returns:
- a
boolean
value
-
forEach
Executes procedure for each element in the set.- Parameters:
procedure
- aTObjectProcedure
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(int val) Locates the index of val.- Parameters:
val
- anint
value- Returns:
- the index of val or -1 if it isn't in the set.
-
insertionIndex
protected int insertionIndex(int 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
- anint
value- Returns:
- an
int
value
-
computeHashCode
public final int computeHashCode(int val) Default implementation of TIntHashingStrategy: delegates hashing to HashFunctions.hash(int).- Specified by:
computeHashCode
in interfaceTIntHashingStrategy
- Parameters:
val
- the value to hash- Returns:
- the hashcode.
-