public abstract class TObjectHash<T> extends THash implements TObjectHashingStrategy<T>
Modifier and Type | Field and Description |
---|---|
protected TObjectHashingStrategy<T> |
_hashingStrategy
the strategy used to hash objects in this collection.
|
protected Object[] |
_set
the set of Objects
|
protected static Object |
FREE |
protected static Object |
REMOVED |
_autoCompactionFactor, _autoCompactRemovesRemaining, _free, _loadFactor, _maxSize, _size, DEFAULT_INITIAL_CAPACITY, DEFAULT_LOAD_FACTOR
Constructor and Description |
---|
TObjectHash()
Creates a new
TObjectHash instance with the default capacity and load factor. |
TObjectHash(int initialCapacity)
Creates a new
TObjectHash instance whose capacity is the next highest prime
above initialCapacity + 1 unless that value is already prime. |
TObjectHash(int initialCapacity,
float loadFactor)
Creates a new
TObjectHash instance with a prime value at or near the specified
capacity and load factor. |
TObjectHash(int initialCapacity,
float loadFactor,
TObjectHashingStrategy<T> strategy)
Creates a new
TObjectHash instance with a prime value at or near the specified
capacity and load factor. |
TObjectHash(int initialCapacity,
TObjectHashingStrategy<T> strategy)
Creates a new
TObjectHash instance whose capacity is the next highest prime
above initialCapacity + 1 unless that value is already prime. |
TObjectHash(TObjectHashingStrategy<T> strategy)
Creates a new
TObjectHash instance with the default capacity and load factor and
a custom hashing strategy. |
Modifier and Type | Method and Description |
---|---|
protected int |
capacity() |
TObjectHash<T> |
clone() |
int |
computeHashCode(T o)
This is the default implementation of TObjectHashingStrategy: it delegates hashing to the
Object's hashCode method.
|
boolean |
contains(Object obj)
Searches the set for obj
|
boolean |
equals(T o1,
T o2)
This is the default implementation of TObjectHashingStrategy: it delegates equality
comparisons to the first parameter's equals() method.
|
boolean |
forEach(TObjectProcedure<T> procedure)
Executes procedure for each element in the set.
|
protected int |
index(T obj)
Locates the index of obj.
|
protected int |
insertionIndex(T obj)
Locates the index at which obj can be inserted.
|
void |
readExternal(ObjectInput in) |
protected void |
removeAt(int index)
Delete the record at index.
|
protected int |
setUp(int initialCapacity)
initializes the Object set of this hash table.
|
protected void |
throwObjectContractViolation(Object o1,
Object o2)
Convenience methods for subclasses to use in throwing exceptions about badly behaved user
objects employed as keys.
|
void |
writeExternal(ObjectOutput out) |
calculateGrownCapacity, clear, compact, ensureCapacity, getAutoCompactionFactor, isEmpty, postInsertHook, reenableAutoCompaction, rehash, setAutoCompactionFactor, size, tempDisableAutoCompaction, trimToSize
protected transient Object[] _set
protected TObjectHashingStrategy<T> _hashingStrategy
protected static final Object REMOVED
protected static final Object FREE
public TObjectHash()
TObjectHash
instance with the default capacity and load factor.public TObjectHash(TObjectHashingStrategy<T> strategy)
TObjectHash
instance with the default capacity and load factor and
a custom hashing strategy.strategy
- used to compute hash codes and to compare objects.public TObjectHash(int initialCapacity)
TObjectHash
instance whose capacity is the next highest prime
above initialCapacity + 1 unless that value is already prime.initialCapacity
- an int
valuepublic TObjectHash(int initialCapacity, TObjectHashingStrategy<T> strategy)
TObjectHash
instance whose capacity is the next highest prime
above initialCapacity + 1 unless that value is already prime. Uses the specified
custom hashing strategy.initialCapacity
- an int
valuestrategy
- used to compute hash codes and to compare objects.public TObjectHash(int initialCapacity, float loadFactor)
TObjectHash
instance with a prime value at or near the specified
capacity and load factor.initialCapacity
- used to find a prime capacity for the table.loadFactor
- used to calculate the threshold over which rehashing takes place.public TObjectHash(int initialCapacity, float loadFactor, TObjectHashingStrategy<T> strategy)
TObjectHash
instance with a prime value at or near the specified
capacity and load factor. Uses the specified custom hashing strategy.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 objects.public TObjectHash<T> clone()
protected int capacity()
protected void removeAt(int index)
THash
protected int setUp(int initialCapacity)
public boolean forEach(TObjectProcedure<T> procedure)
procedure
- a TObjectProcedure
valuepublic boolean contains(Object obj)
obj
- an Object
valueboolean
valueprotected int index(T obj)
obj
- an Object
valueprotected int insertionIndex(T obj)
obj
- an Object
valuepublic final int computeHashCode(T o)
computeHashCode
in interface TObjectHashingStrategy<T>
o
- for which the hashcode is to be computedObject.hashCode()
public final boolean equals(T o1, T o2)
equals
in interface TObjectHashingStrategy<T>
o1
- an Object
valueo2
- an Object
valueObject.equals(Object)
protected final void throwObjectContractViolation(Object o1, Object o2) throws IllegalArgumentException
o1
- the first of the equal elements with unequal hash codes.o2
- the second of the equal elements with unequal hash codes.IllegalArgumentException
- the whole point of this method.public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
writeExternal
in class THash
IOException
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
readExternal
in class THash
IOException
ClassNotFoundException
Copyright © GigaSpaces.