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 TIntHashingStrategystrategy used to hash values in this collectionprotected int[]the set of intsFields inherited from class gnu.trove.TPrimitiveHash
_states, FREE, FULL, REMOVEDFields inherited from class gnu.trove.THash
_autoCompactionFactor, _autoCompactRemovesRemaining, _free, _loadFactor, _maxSize, _size, DEFAULT_INITIAL_CAPACITY, DEFAULT_LOAD_FACTOR -
Constructor Summary
ConstructorsConstructorDescriptionTIntHash()Creates a newTIntHashinstance with the default capacity and load factor.TIntHash(int initialCapacity) Creates a newTIntHashinstance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.TIntHash(int initialCapacity, float loadFactor) Creates a newTIntHashinstance with a prime value at or near the specified capacity and load factor.TIntHash(int initialCapacity, float loadFactor, TIntHashingStrategy strategy) Creates a newTIntHashinstance with a prime value at or near the specified capacity and load factor.TIntHash(int initialCapacity, TIntHashingStrategy strategy) Creates a newTIntHashinstance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.TIntHash(TIntHashingStrategy strategy) Creates a newTIntHashinstance with the default capacity and load factor. -
Method Summary
Modifier and TypeMethodDescriptionclone()final intcomputeHashCode(int val) Default implementation of TIntHashingStrategy: delegates hashing to HashFunctions.hash(int).booleancontains(int val) Searches the set for valbooleanforEach(TIntProcedure procedure) Executes procedure for each element in the set.protected intindex(int val) Locates the index of val.protected intinsertionIndex(int val) Locates the index at which val can be inserted.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.Methods inherited from class gnu.trove.TPrimitiveHash
capacityMethods 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 newTIntHashinstance with the default capacity and load factor. -
TIntHash
public TIntHash(int initialCapacity) Creates a newTIntHashinstance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.- Parameters:
initialCapacity- anintvalue
-
TIntHash
public TIntHash(int initialCapacity, float loadFactor) Creates a newTIntHashinstance 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 newTIntHashinstance with the default capacity and load factor.- Parameters:
strategy- used to compute hash codes and to compare keys.
-
TIntHash
Creates a newTIntHashinstance whose capacity is the next highest prime above initialCapacity + 1 unless that value is already prime.- Parameters:
initialCapacity- anintvaluestrategy- used to compute hash codes and to compare keys.
-
TIntHash
Creates a newTIntHashinstance 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:
clonein 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:
setUpin classTPrimitiveHash- Parameters:
initialCapacity- anintvalue- Returns:
- the actual capacity chosen
-
contains
public boolean contains(int val) Searches the set for val- Parameters:
val- anintvalue- Returns:
- a
booleanvalue
-
forEach
Executes procedure for each element in the set.- Parameters:
procedure- aTObjectProcedurevalue- 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(int val) Locates the index of val.- Parameters:
val- anintvalue- 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- anintvalue- Returns:
- an
intvalue
-
computeHashCode
public final int computeHashCode(int val) Default implementation of TIntHashingStrategy: delegates hashing to HashFunctions.hash(int).- Specified by:
computeHashCodein interfaceTIntHashingStrategy- Parameters:
val- the value to hash- Returns:
- the hashcode.
-