|
GNU Trove | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object gnu.trove.impl.hash.THash gnu.trove.impl.hash.TObjectHash<T> gnu.trove.impl.hash.TCustomObjectHash<K> gnu.trove.map.custom_hash.TObjectIntCustomHashMap<K>
public class TObjectIntCustomHashMap<K>
An open addressed Map implementation for Object keys and int values.
Nested Class Summary | |
---|---|
protected class |
TObjectIntCustomHashMap.KeyView
a view onto the keys of the map. |
Field Summary | |
---|---|
protected int[] |
_values
the values of the map |
protected int |
no_entry_value
the value that represents null |
Fields inherited from class gnu.trove.impl.hash.TCustomObjectHash |
---|
strategy |
Fields inherited from class gnu.trove.impl.hash.TObjectHash |
---|
_set, consumeFreeSlot, FREE, REMOVED |
Fields inherited from class gnu.trove.impl.hash.THash |
---|
_autoCompactionFactor, _autoCompactRemovesRemaining, _autoCompactTemporaryDisable, _free, _loadFactor, _maxSize, _size, DEFAULT_CAPACITY, DEFAULT_LOAD_FACTOR |
Constructor Summary | |
---|---|
TObjectIntCustomHashMap()
FOR EXTERNALIZATION ONLY!!! |
|
TObjectIntCustomHashMap(HashingStrategy<? super K> strategy)
Creates a new TObjectIntHashMap instance with the default
capacity and load factor. |
|
TObjectIntCustomHashMap(HashingStrategy<? super K> strategy,
int initialCapacity)
Creates a new TObjectIntHashMap instance with a prime
capacity equal to or greater than initialCapacity and
with the default load factor. |
|
TObjectIntCustomHashMap(HashingStrategy<? super K> strategy,
int initialCapacity,
float loadFactor)
Creates a new TObjectIntHashMap instance with a prime
capacity equal to or greater than initialCapacity and
with the specified load factor. |
|
TObjectIntCustomHashMap(HashingStrategy<? super K> strategy,
int initialCapacity,
float loadFactor,
int noEntryValue)
Creates a new TObjectIntHashMap instance with a prime
value at or near the specified capacity and load factor. |
|
TObjectIntCustomHashMap(HashingStrategy<? super K> strategy,
TObjectIntMap<? extends K> map)
Creates a new TObjectIntCustomHashMap that contains the entries
in the map passed to it. |
Method Summary | |
---|---|
int |
adjustOrPutValue(K key,
int adjust_amount,
int put_amount)
Adjusts the primitive value mapped to the key if the key is present in the map. |
boolean |
adjustValue(K key,
int amount)
Adjusts the primitive value mapped to key. |
void |
clear()
Empties the collection. |
boolean |
containsKey(java.lang.Object key)
Returns true if this map contains a mapping for the specified key. |
boolean |
containsValue(int val)
Returns true if this map maps one or more keys to the specified value. |
boolean |
equals(java.lang.Object other)
Compares this map with another map for equality of their stored entries. |
boolean |
forEachEntry(TObjectIntProcedure<? super K> procedure)
Executes procedure for each key/value entry in the map. |
boolean |
forEachKey(TObjectProcedure<? super K> procedure)
Executes procedure for each key in the map. |
boolean |
forEachValue(TIntProcedure procedure)
Executes procedure for each value in the map. |
int |
get(java.lang.Object key)
Returns the value to which the specified key is mapped, or null if this map contains no mapping for the key. |
int |
getNoEntryValue()
Returns the value that will be returned from TObjectIntMap.get(java.lang.Object) or TObjectIntMap.put(K, int) if no
entry exists for a given key. |
int |
hashCode()
Returns the hash code value for this map. |
boolean |
increment(K key)
Increments the primitive value mapped to key by 1 |
TObjectIntIterator<K> |
iterator()
Returns a TObjectIntIterator with access to this map's keys and values. |
java.lang.Object[] |
keys()
Returns a copy of the keys of the map as an array. |
K[] |
keys(K[] a)
Returns a copy of the keys of the map as an array. |
java.util.Set<K> |
keySet()
Returns a Set view of the keys contained in this map. |
int |
put(K key,
int value)
Associates the specified value with the specified key in this map (optional operation). |
void |
putAll(java.util.Map<? extends K,? extends java.lang.Integer> map)
Copies all of the mappings from the specified map to this map (optional operation). |
void |
putAll(TObjectIntMap<? extends K> map)
Put all the entries from the given map into this map. |
int |
putIfAbsent(K key,
int value)
Inserts a key/value pair into the map if the specified key is not already associated with a value. |
void |
readExternal(java.io.ObjectInput in)
|
protected void |
rehash(int newCapacity)
rehashes the map to the new capacity. |
int |
remove(java.lang.Object key)
Removes the mapping for a key from this map if it is present (optional operation). |
protected void |
removeAt(int index)
Removes the mapping at index from the map. |
boolean |
retainEntries(TObjectIntProcedure<? super K> procedure)
Retains only those entries in the map for which the procedure returns a true value. |
int |
setUp(int initialCapacity)
initializes the hashtable to a prime capacity which is at least initialCapacity + 1. |
java.lang.String |
toString()
|
void |
transformValues(TIntFunction function)
Transform the values in this map using function. |
TIntCollection |
valueCollection()
Returns a TIntCollection view of the values contained in this map. |
int[] |
values()
Returns the values of the map as an array of int values. |
int[] |
values(int[] array)
Returns the values of the map using an existing array. |
void |
writeExternal(java.io.ObjectOutput out)
|
Methods inherited from class gnu.trove.impl.hash.TCustomObjectHash |
---|
equals, hash |
Methods inherited from class gnu.trove.impl.hash.TObjectHash |
---|
buildObjectContractViolation, capacity, contains, dumpExtraInfo, forEach, index, insertionIndex, insertKey, objectInfo, reportPotentialConcurrentMod, throwObjectContractViolation, throwObjectContractViolation |
Methods inherited from class gnu.trove.impl.hash.THash |
---|
calculateGrownCapacity, compact, computeMaxSize, computeNextAutoCompactionAmount, ensureCapacity, getAutoCompactionFactor, isEmpty, postInsertHook, reenableAutoCompaction, setAutoCompactionFactor, size, tempDisableAutoCompaction, trimToSize |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface gnu.trove.map.TObjectIntMap |
---|
isEmpty, size |
Field Detail |
---|
protected transient int[] _values
protected int no_entry_value
Constructor Detail |
---|
public TObjectIntCustomHashMap()
public TObjectIntCustomHashMap(HashingStrategy<? super K> strategy)
TObjectIntHashMap
instance with the default
capacity and load factor.
public TObjectIntCustomHashMap(HashingStrategy<? super K> strategy, int initialCapacity)
TObjectIntHashMap
instance with a prime
capacity equal to or greater than initialCapacity and
with the default load factor.
initialCapacity
- an int
valuepublic TObjectIntCustomHashMap(HashingStrategy<? super K> strategy, int initialCapacity, float loadFactor)
TObjectIntHashMap
instance with a prime
capacity equal to or greater than initialCapacity and
with the specified load factor.
initialCapacity
- an int
valueloadFactor
- a float
valuepublic TObjectIntCustomHashMap(HashingStrategy<? super K> strategy, int initialCapacity, float loadFactor, int noEntryValue)
TObjectIntHashMap
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.noEntryValue
- the value used to represent null.public TObjectIntCustomHashMap(HashingStrategy<? super K> strategy, TObjectIntMap<? extends K> map)
TObjectIntCustomHashMap
that contains the entries
in the map passed to it.
map
- the TObjectIntMap to be copied.Method Detail |
---|
public int setUp(int initialCapacity)
setUp
in class gnu.trove.impl.hash.TObjectHash<K>
initialCapacity
- an int
value
protected void rehash(int newCapacity)
rehash
in class gnu.trove.impl.hash.THash
newCapacity
- an int
valuepublic int getNoEntryValue()
TObjectIntMap.get(java.lang.Object)
or TObjectIntMap.put(K, int)
if no
entry exists for a given key. The default value is generally zero, but can be
changed during construction of the collection.
getNoEntryValue
in interface TObjectIntMap<K>
public boolean containsKey(java.lang.Object key)
containsKey
in interface TObjectIntMap<K>
key
- key whose presence in this map is to be tested
public boolean containsValue(int val)
TObjectIntMap.getNoEntryValue()
and represents
null for this map instance.
containsValue
in interface TObjectIntMap<K>
val
- int value whose presence in this map is to be tested
public int get(java.lang.Object key)
null
if this map contains no mapping for the key.
More formally, if this map contains a mapping from a key
k
to a value v
such that (key==null ? k==null :
key.equals(k))
, then this method returns v
; otherwise
it returns null
. (There can be at most one such mapping.)
If this map permits null values, then a return value of
null
does not necessarily indicate that the map
contains no mapping for the key; it's also possible that the map
explicitly maps the key to null
. The containsKey
operation may be used to distinguish these two cases.
get
in interface TObjectIntMap<K>
key
- the key whose associated value is to be returned
null
if this map contains no mapping for the keypublic int put(K key, int value)
m.containsKey(k)
would return
true.)
put
in interface TObjectIntMap<K>
key
- key with which the specified value is to be associatedvalue
- an int value value to be associated with the specified key
TObjectIntMap.getNoEntryValue()
public int putIfAbsent(K key, int value)
putIfAbsent
in interface TObjectIntMap<K>
key
- key with which the specified value is to be associatedvalue
- an int value to be associated with the specified key
TObjectIntMap.getNoEntryValue()
).public int remove(java.lang.Object key)
(key==null ? k==null : key.equals(k))
, that mapping
is removed. (The map can contain at most one such mapping.)
Returns the value to which this map previously associated the key, or null if the map contained no mapping for the key.
If this map permits null values, then a return value of null does not necessarily indicate that the map contained no mapping for the key; it's also possible that the map explicitly mapped the key to null.
The map will not contain a mapping for the specified key once the call returns.
remove
in interface TObjectIntMap<K>
key
- key whose mapping is to be removed from the map
protected void removeAt(int index)
removeAt
in class gnu.trove.impl.hash.TObjectHash<K>
index
- an int
valuepublic void putAll(java.util.Map<? extends K,? extends java.lang.Integer> map)
put(k, v)
on this map once
for each mapping from key k to value v in the
specified map. The behavior of this operation is undefined if the
specified map is modified while the operation is in progress.
putAll
in interface TObjectIntMap<K>
map
- mappings to be stored in this mappublic void putAll(TObjectIntMap<? extends K> map)
putAll
in interface TObjectIntMap<K>
map
- The map from which entries will be obtained to put into this map.public void clear()
clear
in interface TObjectIntMap<K>
clear
in class gnu.trove.impl.hash.THash
public java.util.Set<K> keySet()
Set
view of the keys contained in this map.
The set is backed by the map, so changes to the map are
reflected in the set, and vice-versa. If the map is modified
while an iteration over the set is in progress (except through
the iterator's own remove operation), the results of
the iteration are undefined. The set supports element removal,
which removes the corresponding mapping from the map, via the
Iterator.remove, Set.remove,
removeAll, retainAll, and clear
operations. It does not support the add or addAll
operations.
keySet
in interface TObjectIntMap<K>
public java.lang.Object[] keys()
keys
in interface TObjectIntMap<K>
public K[] keys(K[] a)
keys
in interface TObjectIntMap<K>
a
- the array into which the elements of the list are to be stored,
if it is big enough; otherwise, a new array of the same type is
allocated for this purpose.
public TIntCollection valueCollection()
TIntCollection
view of the values contained in this map.
The collection is backed by the map, so changes to the map are
reflected in the collection, and vice-versa. If the map is
modified while an iteration over the collection is in progress
(except through the iterator's own remove operation),
the results of the iteration are undefined. The collection
supports element removal, which removes the corresponding
mapping from the map, via the TIntIterator.remove,
TIntCollection.remove, removeAll,
retainAll and clear operations. It does not
support the add or addAll operations.
valueCollection
in interface TObjectIntMap<K>
public int[] values()
values
in interface TObjectIntMap<K>
public int[] values(int[] array)
values
in interface TObjectIntMap<K>
array
- the array into which the elements of the list are to be stored,
if it is big enough; otherwise, a new array of the same type is
allocated for this purpose.
public TObjectIntIterator<K> iterator()
TObjectIntMap
iterator
in interface TObjectIntMap<K>
public boolean increment(K key)
increment
in interface TObjectIntMap<K>
key
- the key of the value to increment
public boolean adjustValue(K key, int amount)
adjustValue
in interface TObjectIntMap<K>
key
- the key of the value to incrementamount
- the amount to adjust the value by.
public int adjustOrPutValue(K key, int adjust_amount, int put_amount)
adjustOrPutValue
in interface TObjectIntMap<K>
key
- the key of the value to incrementadjust_amount
- the amount to adjust the value byput_amount
- the value put into the map if the key is not initial present
public boolean forEachKey(TObjectProcedure<? super K> procedure)
forEachKey
in interface TObjectIntMap<K>
procedure
- a TObjectProcedure
value
public boolean forEachValue(TIntProcedure procedure)
forEachValue
in interface TObjectIntMap<K>
procedure
- a TIntProcedure
value
public boolean forEachEntry(TObjectIntProcedure<? super K> procedure)
forEachEntry
in interface TObjectIntMap<K>
procedure
- a TOObjectIntProcedure
value
public boolean retainEntries(TObjectIntProcedure<? super K> procedure)
retainEntries
in interface TObjectIntMap<K>
procedure
- determines which entries to keep
public void transformValues(TIntFunction function)
transformValues
in interface TObjectIntMap<K>
function
- a TIntFunction
valuepublic boolean equals(java.lang.Object other)
equals
in interface TObjectIntMap<K>
equals
in class java.lang.Object
other
- an Object
value
boolean
valuepublic int hashCode()
Object.hashCode()
.
hashCode
in interface TObjectIntMap<K>
hashCode
in class java.lang.Object
Object.equals(Object)
,
TObjectIntMap.equals(Object)
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
writeExternal
in class gnu.trove.impl.hash.TCustomObjectHash<K>
java.io.IOException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
readExternal
in class gnu.trove.impl.hash.TCustomObjectHash<K>
java.io.IOException
java.lang.ClassNotFoundException
public java.lang.String toString()
toString
in class java.lang.Object
|
GNU Trove | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |