|
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.TObjectDoubleCustomHashMap<K>
public class TObjectDoubleCustomHashMap<K>
An open addressed Map implementation for Object keys and double values.
Nested Class Summary | |
---|---|
protected class |
TObjectDoubleCustomHashMap.KeyView
a view onto the keys of the map. |
Field Summary | |
---|---|
protected double[] |
_values
the values of the map |
protected double |
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 | |
---|---|
TObjectDoubleCustomHashMap()
FOR EXTERNALIZATION ONLY!!! |
|
TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy)
Creates a new TObjectDoubleHashMap instance with the default
capacity and load factor. |
|
TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy,
int initialCapacity)
Creates a new TObjectDoubleHashMap instance with a prime
capacity equal to or greater than initialCapacity and
with the default load factor. |
|
TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy,
int initialCapacity,
float loadFactor)
Creates a new TObjectDoubleHashMap instance with a prime
capacity equal to or greater than initialCapacity and
with the specified load factor. |
|
TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy,
int initialCapacity,
float loadFactor,
double noEntryValue)
Creates a new TObjectDoubleHashMap instance with a prime
value at or near the specified capacity and load factor. |
|
TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy,
TObjectDoubleMap<? extends K> map)
Creates a new TObjectDoubleCustomHashMap that contains the entries
in the map passed to it. |
Method Summary | |
---|---|
double |
adjustOrPutValue(K key,
double adjust_amount,
double put_amount)
Adjusts the primitive value mapped to the key if the key is present in the map. |
boolean |
adjustValue(K key,
double 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(double 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(TObjectDoubleProcedure<? 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(TDoubleProcedure procedure)
Executes procedure for each value in the map. |
double |
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. |
double |
getNoEntryValue()
Returns the value that will be returned from TObjectDoubleMap.get(java.lang.Object) or TObjectDoubleMap.put(K, double) 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 |
TObjectDoubleIterator<K> |
iterator()
Returns a TObjectDoubleIterator 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. |
double |
put(K key,
double value)
Associates the specified value with the specified key in this map (optional operation). |
void |
putAll(java.util.Map<? extends K,? extends java.lang.Double> map)
Copies all of the mappings from the specified map to this map (optional operation). |
void |
putAll(TObjectDoubleMap<? extends K> map)
Put all the entries from the given map into this map. |
double |
putIfAbsent(K key,
double 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. |
double |
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(TObjectDoubleProcedure<? 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(TDoubleFunction function)
Transform the values in this map using function. |
TDoubleCollection |
valueCollection()
Returns a TDoubleCollection view of the values contained in this map. |
double[] |
values()
Returns the values of the map as an array of double values. |
double[] |
values(double[] 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.TObjectDoubleMap |
---|
isEmpty, size |
Field Detail |
---|
protected transient double[] _values
protected double no_entry_value
Constructor Detail |
---|
public TObjectDoubleCustomHashMap()
public TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy)
TObjectDoubleHashMap
instance with the default
capacity and load factor.
public TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy, int initialCapacity)
TObjectDoubleHashMap
instance with a prime
capacity equal to or greater than initialCapacity and
with the default load factor.
initialCapacity
- an int
valuepublic TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy, int initialCapacity, float loadFactor)
TObjectDoubleHashMap
instance with a prime
capacity equal to or greater than initialCapacity and
with the specified load factor.
initialCapacity
- an int
valueloadFactor
- a float
valuepublic TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy, int initialCapacity, float loadFactor, double noEntryValue)
TObjectDoubleHashMap
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 TObjectDoubleCustomHashMap(HashingStrategy<? super K> strategy, TObjectDoubleMap<? extends K> map)
TObjectDoubleCustomHashMap
that contains the entries
in the map passed to it.
map
- the TObjectDoubleMap 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 double getNoEntryValue()
TObjectDoubleMap.get(java.lang.Object)
or TObjectDoubleMap.put(K, double)
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 TObjectDoubleMap<K>
public boolean containsKey(java.lang.Object key)
containsKey
in interface TObjectDoubleMap<K>
key
- key whose presence in this map is to be tested
public boolean containsValue(double val)
TObjectDoubleMap.getNoEntryValue()
and represents
null for this map instance.
containsValue
in interface TObjectDoubleMap<K>
val
- double value whose presence in this map is to be tested
public double 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 TObjectDoubleMap<K>
key
- the key whose associated value is to be returned
null
if this map contains no mapping for the keypublic double put(K key, double value)
m.containsKey(k)
would return
true.)
put
in interface TObjectDoubleMap<K>
key
- key with which the specified value is to be associatedvalue
- an double value value to be associated with the specified key
TObjectDoubleMap.getNoEntryValue()
public double putIfAbsent(K key, double value)
putIfAbsent
in interface TObjectDoubleMap<K>
key
- key with which the specified value is to be associatedvalue
- an double value to be associated with the specified key
TObjectDoubleMap.getNoEntryValue()
).public double 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 TObjectDoubleMap<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.Double> 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 TObjectDoubleMap<K>
map
- mappings to be stored in this mappublic void putAll(TObjectDoubleMap<? extends K> map)
putAll
in interface TObjectDoubleMap<K>
map
- The map from which entries will be obtained to put into this map.public void clear()
clear
in interface TObjectDoubleMap<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 TObjectDoubleMap<K>
public java.lang.Object[] keys()
keys
in interface TObjectDoubleMap<K>
public K[] keys(K[] a)
keys
in interface TObjectDoubleMap<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 TDoubleCollection valueCollection()
TDoubleCollection
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 TDoubleIterator.remove,
TDoubleCollection.remove, removeAll,
retainAll and clear operations. It does not
support the add or addAll operations.
valueCollection
in interface TObjectDoubleMap<K>
public double[] values()
values
in interface TObjectDoubleMap<K>
public double[] values(double[] array)
values
in interface TObjectDoubleMap<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 TObjectDoubleIterator<K> iterator()
TObjectDoubleMap
iterator
in interface TObjectDoubleMap<K>
public boolean increment(K key)
increment
in interface TObjectDoubleMap<K>
key
- the key of the value to increment
public boolean adjustValue(K key, double amount)
adjustValue
in interface TObjectDoubleMap<K>
key
- the key of the value to incrementamount
- the amount to adjust the value by.
public double adjustOrPutValue(K key, double adjust_amount, double put_amount)
adjustOrPutValue
in interface TObjectDoubleMap<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 TObjectDoubleMap<K>
procedure
- a TObjectProcedure
value
public boolean forEachValue(TDoubleProcedure procedure)
forEachValue
in interface TObjectDoubleMap<K>
procedure
- a TDoubleProcedure
value
public boolean forEachEntry(TObjectDoubleProcedure<? super K> procedure)
forEachEntry
in interface TObjectDoubleMap<K>
procedure
- a TOObjectDoubleProcedure
value
public boolean retainEntries(TObjectDoubleProcedure<? super K> procedure)
retainEntries
in interface TObjectDoubleMap<K>
procedure
- determines which entries to keep
public void transformValues(TDoubleFunction function)
transformValues
in interface TObjectDoubleMap<K>
function
- a TDoubleFunction
valuepublic boolean equals(java.lang.Object other)
equals
in interface TObjectDoubleMap<K>
equals
in class java.lang.Object
other
- an Object
value
boolean
valuepublic int hashCode()
Object.hashCode()
.
hashCode
in interface TObjectDoubleMap<K>
hashCode
in class java.lang.Object
Object.equals(Object)
,
TObjectDoubleMap.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 |