Class IntDoubleHashMap
java.lang.Object
org.eclipse.collections.impl.primitive.AbstractDoubleIterable
org.eclipse.collections.impl.map.mutable.primitive.AbstractMutableDoubleValuesMap
org.eclipse.collections.impl.map.mutable.primitive.IntDoubleHashMap
- All Implemented Interfaces:
Externalizable
,Serializable
,DoubleIterable
,DoubleValuesMap
,IntDoubleMap
,MutableDoubleValuesMap
,MutableIntDoubleMap
,PrimitiveIterable
,MutableIntKeysMap
,IntKeysMap
public class IntDoubleHashMap extends AbstractMutableDoubleValuesMap implements MutableIntDoubleMap, Externalizable, MutableIntKeysMap
This file was automatically generated from template file primitivePrimitiveHashMap.stg.
- Since:
- 3.0.
- See Also:
- Serialized Form
-
Constructor Summary
Constructors Constructor Description IntDoubleHashMap()
IntDoubleHashMap(int initialCapacity)
IntDoubleHashMap(IntDoubleMap map)
-
Method Summary
Modifier and Type Method Description double
addToValue(int key, double toBeAdded)
Increments and updates the value associated with the key, if a value exists, or sets the value to be the specified value if one does not.MutableIntDoubleMap
asSynchronized()
Returns a synchronized view of this map, delegating all operations to this map but ensuring only one caller has access to the map at a time.MutableIntDoubleMap
asUnmodifiable()
Returns an unmodifiable view of this map, delegating all read-only operations to this map and throwing anUnsupportedOperationException
for all mutating operations.void
clear()
Removes all entries from this map.void
compact()
Rehashes every element in the set into a new backing table of the smallest possible size and eliminating removed sentinels.boolean
containsKey(int key)
Returns whether or not the key is present in the map.MutableDoubleIterator
doubleIterator()
Returns a primitive iterator that can be used to iterate over the DoubleIterable in an imperative style.boolean
equals(Object obj)
Follows the same general contract asMap.equals(Object)
.MutableDoubleIntMap
flipUniqueValues()
Return the DoubleIntMap that is obtained by flipping the direction of this map and making the associations from value to key.void
forEachKey(IntProcedure procedure)
Iterates through each key in the map, invoking the procedure for each.void
forEachKeyValue(IntDoubleProcedure procedure)
Iterates through each key/value pair in the map, invoking the procedure for each.double
get(int key)
Retrieves the value associated with the key.double
getIfAbsent(int key, double ifAbsent)
Retrieves the value associated with the key, returning the specified default value if no such mapping exists.double
getIfAbsentPut(int key, double value)
Retrieves the value associated with the key if one exists; if it does not, associates a value with the key.double
getIfAbsentPut(int key, DoubleFunction0 function)
Retrieves the value associated with the key if one exists; if it does not, invokes the supplier and associates the result with the key.<P> double
getIfAbsentPutWith(int key, DoubleFunction<? super P> function, P parameter)
Retrieves the value associated with the key if one exists; if it does not, invokes the value function with the parameter and associates the result with the key.double
getIfAbsentPutWithKey(int key, IntToDoubleFunction function)
Retrieves the value associated with the key if one exists; if it does not, associates the result of invoking the value function with the key.double
getOrThrow(int key)
Retrieves the value associated with the key, throwing anIllegalStateException
if no such mapping exists.int
hashCode()
Follows the same general contract asMap.hashCode()
.<V> V
injectInto(V injectedValue, ObjectDoubleToObjectFunction<? super V,? extends V> function)
MutableIntSet
keySet()
Returns a set containing all the keys in this map.LazyIntIterable
keysView()
Returns a view of the keys in this map.RichIterable<IntDoublePair>
keyValuesView()
Returns a view of the key/value pairs in this map.static IntDoubleHashMap
newWithKeysValues(int key1, double value1)
static IntDoubleHashMap
newWithKeysValues(int key1, double value1, int key2, double value2)
static IntDoubleHashMap
newWithKeysValues(int key1, double value1, int key2, double value2, int key3, double value3)
static IntDoubleHashMap
newWithKeysValues(int key1, double value1, int key2, double value2, int key3, double value3, int key4, double value4)
void
put(int key, double value)
Associates a value with the specified key.void
putAll(IntDoubleMap map)
Puts all of the key/value mappings from the specified map into this map.void
readExternal(ObjectInput in)
IntDoubleHashMap
reject(IntDoublePredicate predicate)
Return a copy of this map containing only the key/value pairs that do not match the predicate.void
remove(int key)
Removes the mapping associated with the key, if one exists, from the map.void
removeKey(int key)
Removes the mapping associated with the key, if one exists, from the map.double
removeKeyIfAbsent(int key, double value)
Removes the mapping associated with the key, if one exists, from the map, returning the previously associated value with the key.IntDoubleHashMap
select(IntDoublePredicate predicate)
Return a copy of this map containing only the key/value pairs that match the predicate.ImmutableIntDoubleMap
toImmutable()
Returns a copy of this map that is immutable (if this map is mutable) or itself if it is already immutable.String
toString()
Returns a string with the elements of this iterable separated by commas with spaces and enclosed in square brackets.double
updateValue(int key, double initialValueIfAbsent, DoubleToDoubleFunction function)
Updates or sets the value associated with the key by applying the function to the existing value, if one exists, or to the specified initial value if one does not.void
updateValues(IntDoubleToDoubleFunction function)
Updates the values in-place.MutableDoubleCollection
values()
Returns the values in this map as a separate collection.IntDoubleHashMap
withKeysValues(int key1, double value1, int key2, double value2)
IntDoubleHashMap
withKeysValues(int key1, double value1, int key2, double value2, int key3, double value3)
IntDoubleHashMap
withKeysValues(int key1, double value1, int key2, double value2, int key3, double value3, int key4, double value4)
IntDoubleHashMap
withKeyValue(int key1, double value1)
Associates a value with the specified key.IntDoubleHashMap
withoutAllKeys(IntIterable keys)
Removes the mappings associated with all the keys, if they exist, from this map.IntDoubleHashMap
withoutKey(int key)
Removes the mapping associated with the key, if one exists, from this map.void
writeExternal(ObjectOutput out)
Methods inherited from class org.eclipse.collections.impl.map.mutable.primitive.AbstractMutableDoubleValuesMap
allSatisfy, anySatisfy, appendString, chunk, collect, contains, containsAll, containsValue, count, detectIfNone, each, forEach, forEachValue, isEmpty, max, min, noneSatisfy, notEmpty, reject, select, size, sum, toArray, toArray
Methods inherited from class org.eclipse.collections.impl.primitive.AbstractDoubleIterable
asLazy, average, containsAll, maxIfEmpty, median, minIfEmpty, toBag, toList, toSet, toSortedArray, toSortedList
Methods inherited from interface org.eclipse.collections.api.DoubleIterable
allSatisfy, anySatisfy, asLazy, average, averageIfEmpty, chunk, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectInt, collectLong, collectShort, contains, containsAll, containsAll, count, detectIfNone, each, flatCollect, forEach, max, maxIfEmpty, median, medianIfEmpty, min, minIfEmpty, noneSatisfy, reduce, reduceIfEmpty, reject, select, sum, summaryStatistics, toArray, toArray, toBag, toList, toSet, toSortedArray, toSortedList
Methods inherited from interface org.eclipse.collections.api.map.primitive.DoubleValuesMap
containsValue, forEachValue, tap
Methods inherited from interface org.eclipse.collections.impl.map.primitive.IntKeysMap
isEmpty, notEmpty, size
Methods inherited from interface org.eclipse.collections.api.map.primitive.MutableDoubleValuesMap
collect, reject, select
Methods inherited from interface org.eclipse.collections.api.map.primitive.MutableIntDoubleMap
putPair, withAllKeyValues
Methods inherited from interface org.eclipse.collections.api.PrimitiveIterable
appendString, appendString, appendString, isEmpty, makeString, makeString, makeString, notEmpty, size
-
Constructor Details
-
IntDoubleHashMap
public IntDoubleHashMap() -
IntDoubleHashMap
public IntDoubleHashMap(int initialCapacity) -
IntDoubleHashMap
-
-
Method Details
-
newWithKeysValues
-
newWithKeysValues
-
newWithKeysValues
public static IntDoubleHashMap newWithKeysValues(int key1, double value1, int key2, double value2, int key3, double value3) -
newWithKeysValues
public static IntDoubleHashMap newWithKeysValues(int key1, double value1, int key2, double value2, int key3, double value3, int key4, double value4) -
equals
Description copied from interface:IntDoubleMap
Follows the same general contract asMap.equals(Object)
.- Specified by:
equals
in interfaceIntDoubleMap
- Overrides:
equals
in classObject
-
hashCode
public int hashCode()Description copied from interface:IntDoubleMap
Follows the same general contract asMap.hashCode()
.- Specified by:
hashCode
in interfaceIntDoubleMap
- Overrides:
hashCode
in classObject
-
toString
Description copied from interface:PrimitiveIterable
Returns a string with the elements of this iterable separated by commas with spaces and enclosed in square brackets.Assert.assertEquals("[]", IntLists.mutable.empty().toString()); Assert.assertEquals("[1]", IntLists.mutable.with(1).toString()); Assert.assertEquals("[1, 2, 3]", IntLists.mutable.with(1, 2, 3).toString());
- Specified by:
toString
in interfaceIntDoubleMap
- Specified by:
toString
in interfacePrimitiveIterable
- Overrides:
toString
in classAbstractDoubleIterable
- Returns:
- a string representation of this PrimitiveIterable
- See Also:
AbstractCollection.toString()
-
doubleIterator
Description copied from interface:DoubleIterable
Returns a primitive iterator that can be used to iterate over the DoubleIterable in an imperative style.- Specified by:
doubleIterator
in interfaceDoubleIterable
- Specified by:
doubleIterator
in interfaceMutableDoubleValuesMap
-
injectInto
public <V> V injectInto(V injectedValue, ObjectDoubleToObjectFunction<? super V,? extends V> function)- Specified by:
injectInto
in interfaceDoubleIterable
-
clear
public void clear()Description copied from interface:MutableDoubleValuesMap
Removes all entries from this map.- Specified by:
clear
in interfaceMutableDoubleValuesMap
- Specified by:
clear
in interfaceMutableIntKeysMap
-
put
public void put(int key, double value)Description copied from interface:MutableIntDoubleMap
Associates a value with the specified key. If a value is already associated with the key in this map, it will be replaced withvalue
.- Specified by:
put
in interfaceMutableIntDoubleMap
- Parameters:
key
- the keyvalue
- the value to associate withvalue
-
putAll
Description copied from interface:MutableIntDoubleMap
Puts all of the key/value mappings from the specified map into this map. If this map already has a value associated with one of the keys in the map, it will be replaced with the value inmap
.- Specified by:
putAll
in interfaceMutableIntDoubleMap
- Parameters:
map
- the map to copy into this map
-
updateValues
Description copied from interface:MutableIntDoubleMap
Updates the values in-place.- Specified by:
updateValues
in interfaceMutableIntDoubleMap
- Parameters:
function
- that takes a key and its value and that returns a new value for this key
-
removeKey
public void removeKey(int key)Description copied from interface:MutableIntDoubleMap
Removes the mapping associated with the key, if one exists, from the map.- Specified by:
removeKey
in interfaceMutableIntDoubleMap
- Specified by:
removeKey
in interfaceMutableIntKeysMap
- Parameters:
key
- the key to remove- See Also:
MutableIntDoubleMap.remove(int)
-
remove
public void remove(int key)Description copied from interface:MutableIntDoubleMap
Removes the mapping associated with the key, if one exists, from the map.- Specified by:
remove
in interfaceMutableIntDoubleMap
- Parameters:
key
- the key to remove- See Also:
MutableIntDoubleMap.removeKey(int)
-
removeKeyIfAbsent
public double removeKeyIfAbsent(int key, double value)Description copied from interface:MutableIntDoubleMap
Removes the mapping associated with the key, if one exists, from the map, returning the previously associated value with the key. If no mapping existed for the key, the specified default value is returned.- Specified by:
removeKeyIfAbsent
in interfaceMutableIntDoubleMap
- Parameters:
key
- the key to removevalue
- the default value to return if no mapping for the key exists- Returns:
- the value previously associated with the key, if one existed,
or
value
if not
-
getIfAbsentPut
public double getIfAbsentPut(int key, double value)Description copied from interface:MutableIntDoubleMap
Retrieves the value associated with the key if one exists; if it does not, associates a value with the key.- Specified by:
getIfAbsentPut
in interfaceMutableIntDoubleMap
- Parameters:
key
- the keyvalue
- the value to associate withkey
if no such mapping exists- Returns:
- the value associated with key, if one exists, or
value
if not
-
getIfAbsentPut
Description copied from interface:MutableIntDoubleMap
Retrieves the value associated with the key if one exists; if it does not, invokes the supplier and associates the result with the key.- Specified by:
getIfAbsentPut
in interfaceMutableIntDoubleMap
- Parameters:
key
- the keyfunction
- the supplier that provides the value if no mapping exists forkey
- Returns:
- the value associated with the key, if one exists, or the result of
invoking
function
if not
-
getIfAbsentPutWith
Description copied from interface:MutableIntDoubleMap
Retrieves the value associated with the key if one exists; if it does not, invokes the value function with the parameter and associates the result with the key.- Specified by:
getIfAbsentPutWith
in interfaceMutableIntDoubleMap
- Type Parameters:
P
- the type of the value function'sparameter
- Parameters:
key
- the keyfunction
- the function that provides the value if no mapping exists. The specifiedparameter
will be passed as the argument to the function.parameter
- the parameter to provide tofunction
if no value exists forkey
- Returns:
- the value associated with the key, if one exists, or the result of
invoking
function
withparameter
if not
-
getIfAbsentPutWithKey
Description copied from interface:MutableIntDoubleMap
Retrieves the value associated with the key if one exists; if it does not, associates the result of invoking the value function with the key.- Specified by:
getIfAbsentPutWithKey
in interfaceMutableIntDoubleMap
- Parameters:
key
- the keyfunction
- the function that provides the value if no mapping exists. Thekey
will be passed as the argument to the function.- Returns:
- the value associated with the key, if one exists, or the result of
invoking
function
withkey
if not
-
addToValue
public double addToValue(int key, double toBeAdded)Description copied from interface:MutableIntDoubleMap
Increments and updates the value associated with the key, if a value exists, or sets the value to be the specified value if one does not.- Specified by:
addToValue
in interfaceMutableIntDoubleMap
- Parameters:
key
- the keytoBeAdded
- the amount to increment the existing value, if one exists, or to use as the initial value if one does not- Returns:
- the value after incrementing
toBeAdded
to the existing value associated withkey
ortoBeAdded
if one does not
-
updateValue
Description copied from interface:MutableIntDoubleMap
Updates or sets the value associated with the key by applying the function to the existing value, if one exists, or to the specified initial value if one does not.- Specified by:
updateValue
in interfaceMutableIntDoubleMap
- Parameters:
key
- the keyinitialValueIfAbsent
- the initial value to supply to the function if no mapping exists for the keyfunction
- the function that returns the updated value based on the current value or the initial value, if no value exists- Returns:
- the new value associated with the key, either as a result of applying
function
to the value already associated with the key or as a result of applying it toinitialValueIfAbsent
and associating the result withkey
-
withKeyValue
Description copied from interface:MutableIntDoubleMap
Associates a value with the specified key. If a value is already associated with the key in this map, it will be replaced withvalue
.- Specified by:
withKeyValue
in interfaceMutableIntDoubleMap
- Parameters:
key1
- the keyvalue1
- the value to associate withvalue
- Returns:
- this map
- See Also:
MutableIntDoubleMap.put(int, double)
-
withKeysValues
-
withKeysValues
public IntDoubleHashMap withKeysValues(int key1, double value1, int key2, double value2, int key3, double value3) -
withKeysValues
public IntDoubleHashMap withKeysValues(int key1, double value1, int key2, double value2, int key3, double value3, int key4, double value4) -
withoutKey
Description copied from interface:MutableIntDoubleMap
Removes the mapping associated with the key, if one exists, from this map.- Specified by:
withoutKey
in interfaceMutableIntDoubleMap
- Parameters:
key
- the key to remove- Returns:
- this map
- See Also:
MutableIntDoubleMap.remove(int)
-
withoutAllKeys
Description copied from interface:MutableIntDoubleMap
Removes the mappings associated with all the keys, if they exist, from this map.- Specified by:
withoutAllKeys
in interfaceMutableIntDoubleMap
- Parameters:
keys
- the keys to remove- Returns:
- this map
- See Also:
MutableIntDoubleMap.remove(int)
-
asUnmodifiable
Description copied from interface:MutableIntDoubleMap
Returns an unmodifiable view of this map, delegating all read-only operations to this map and throwing anUnsupportedOperationException
for all mutating operations. This avoids the overhead of copying the map when callingIntDoubleMap.toImmutable()
while still providing immutability.- Specified by:
asUnmodifiable
in interfaceMutableIntDoubleMap
- Returns:
- an unmodifiable view of this map
-
asSynchronized
Description copied from interface:MutableIntDoubleMap
Returns a synchronized view of this map, delegating all operations to this map but ensuring only one caller has access to the map at a time.- Specified by:
asSynchronized
in interfaceMutableIntDoubleMap
- Returns:
- a synchronized view of this map
-
toImmutable
Description copied from interface:IntDoubleMap
Returns a copy of this map that is immutable (if this map is mutable) or itself if it is already immutable.- Specified by:
toImmutable
in interfaceIntDoubleMap
- Returns:
- an immutable map that is equivalent to this one
-
get
public double get(int key)Description copied from interface:IntDoubleMap
Retrieves the value associated with the key. If no mapping exists for the key, the default value (usually0
) is returned.- Specified by:
get
in interfaceIntDoubleMap
- Parameters:
key
- the key- Returns:
- the value associated with the key, or the default value if no such mapping exists
-
getIfAbsent
public double getIfAbsent(int key, double ifAbsent)Description copied from interface:IntDoubleMap
Retrieves the value associated with the key, returning the specified default value if no such mapping exists.- Specified by:
getIfAbsent
in interfaceIntDoubleMap
- Parameters:
key
- the keyifAbsent
- the default value to return if no mapping exists forkey
- Returns:
- the value associated with the key, or
ifAbsent
if no such mapping exists.
-
getOrThrow
public double getOrThrow(int key)Description copied from interface:IntDoubleMap
Retrieves the value associated with the key, throwing anIllegalStateException
if no such mapping exists.- Specified by:
getOrThrow
in interfaceIntDoubleMap
- Parameters:
key
- the key- Returns:
- the value associated with the key
-
containsKey
public boolean containsKey(int key)Description copied from interface:IntDoubleMap
Returns whether or not the key is present in the map.- Specified by:
containsKey
in interfaceIntDoubleMap
- Specified by:
containsKey
in interfaceIntKeysMap
- Parameters:
key
- the key- Returns:
- if a mapping exists in this map for the key
-
forEachKey
Description copied from interface:IntDoubleMap
Iterates through each key in the map, invoking the procedure for each.- Specified by:
forEachKey
in interfaceIntDoubleMap
- Specified by:
forEachKey
in interfaceIntKeysMap
- Parameters:
procedure
- the procedure to invoke for each key
-
forEachKeyValue
Description copied from interface:IntDoubleMap
Iterates through each key/value pair in the map, invoking the procedure for each.- Specified by:
forEachKeyValue
in interfaceIntDoubleMap
- Parameters:
procedure
- the procedure to invoke for each key/value pair
-
keysView
Description copied from interface:IntDoubleMap
Returns a view of the keys in this map. This iterable is backed by the map, so any modifications to the underlying map will be reflected in the keys returned by the iterable.- Specified by:
keysView
in interfaceIntDoubleMap
- Returns:
- a view of the keys in this map
-
keyValuesView
Description copied from interface:IntDoubleMap
Returns a view of the key/value pairs in this map. This iterable is backed by the map, so any modifications to the underlying map will be reflected in the pairs returned by the iterable.- Specified by:
keyValuesView
in interfaceIntDoubleMap
- Returns:
- a view of the keys in this map
-
flipUniqueValues
Description copied from interface:IntDoubleMap
Return the DoubleIntMap that is obtained by flipping the direction of this map and making the associations from value to key.- Specified by:
flipUniqueValues
in interfaceIntDoubleMap
- Specified by:
flipUniqueValues
in interfaceMutableIntDoubleMap
-
select
Description copied from interface:IntDoubleMap
Return a copy of this map containing only the key/value pairs that match the predicate.- Specified by:
select
in interfaceIntDoubleMap
- Specified by:
select
in interfaceMutableIntDoubleMap
- Parameters:
predicate
- the predicate to determine which key/value pairs in this map should be included in the returned map- Returns:
- a copy of this map with the matching key/value pairs
-
reject
Description copied from interface:IntDoubleMap
Return a copy of this map containing only the key/value pairs that do not match the predicate.- Specified by:
reject
in interfaceIntDoubleMap
- Specified by:
reject
in interfaceMutableIntDoubleMap
- Parameters:
predicate
- the predicate to determine which key/value pairs in this map should be excluded from the returned map- Returns:
- a copy of this map without the matching key/value pairs
-
writeExternal
- Specified by:
writeExternal
in interfaceExternalizable
- Throws:
IOException
-
readExternal
- Specified by:
readExternal
in interfaceExternalizable
- Throws:
IOException
ClassNotFoundException
-
compact
public void compact()Rehashes every element in the set into a new backing table of the smallest possible size and eliminating removed sentinels. -
keySet
Description copied from interface:IntDoubleMap
Returns a set containing all the keys in this map. The set is backed by the map, so any modifications to the returned set will affect this map.- Specified by:
keySet
in interfaceIntDoubleMap
- Returns:
- a mutable set containing the keys in this map
-
values
Description copied from interface:DoubleValuesMap
Returns the values in this map as a separate collection. The returned collection is backed by the map, so any changes made to the returned collection will affect the state of this map.- Specified by:
values
in interfaceDoubleValuesMap
- Returns:
- the values as a collection backed by this map
-