Class Int2DoubleMaps.SynchronizedMap
- java.lang.Object
-
- it.unimi.dsi.fastutil.ints.Int2DoubleFunctions.SynchronizedFunction
-
- it.unimi.dsi.fastutil.ints.Int2DoubleMaps.SynchronizedMap
-
- All Implemented Interfaces:
Function<java.lang.Integer,java.lang.Double>
,Int2DoubleFunction
,Int2DoubleMap
,java.io.Serializable
,java.util.function.Function<java.lang.Integer,java.lang.Double>
,java.util.function.IntToDoubleFunction
,java.util.Map<java.lang.Integer,java.lang.Double>
- Direct Known Subclasses:
Int2DoubleSortedMaps.SynchronizedSortedMap
- Enclosing class:
- Int2DoubleMaps
public static class Int2DoubleMaps.SynchronizedMap extends Int2DoubleFunctions.SynchronizedFunction implements Int2DoubleMap, java.io.Serializable
A synchronized wrapper class for maps.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.ints.Int2DoubleMap
Int2DoubleMap.Entry, Int2DoubleMap.FastEntrySet
-
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description double
compute(int key, java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Attempts to compute a mapping for the specified key and its current mapped value (ornull
if there is no current mapping).java.lang.Double
compute(java.lang.Integer key, java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Deprecated.Please use the corresponding type-specific method instead.double
computeIfAbsent(int key, java.util.function.IntToDoubleFunction mappingFunction)
If the specified key is not already associated with a value, attempts to compute its value using the given mapping function and enters it into this map.java.lang.Double
computeIfAbsent(java.lang.Integer key, java.util.function.Function<? super java.lang.Integer,? extends java.lang.Double> mappingFunction)
Deprecated.Please use the corresponding type-specific method instead.double
computeIfAbsentNullable(int key, java.util.function.IntFunction<? extends java.lang.Double> mappingFunction)
If the specified key is not already associated with a value, attempts to compute its value using the given mapping function and enters it into this map unless it isnull
.double
computeIfAbsentPartial(int key, Int2DoubleFunction mappingFunction)
If the specified key is not already associated with a value, attempts to compute its value using the given mapping function and enters it into this map, unless the key is not present in the given mapping function.double
computeIfPresent(int key, java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
If the value for the specified key is present, attempts to compute a new mapping given the key and its current mapped value.java.lang.Double
computeIfPresent(java.lang.Integer key, java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Deprecated.Please use the corresponding type-specific method instead.boolean
containsValue(double v)
Returnstrue
if this map maps one or more keys to the specified value.boolean
containsValue(java.lang.Object ov)
Deprecated.Please use the corresponding type-specific method instead.ObjectSet<java.util.Map.Entry<java.lang.Integer,java.lang.Double>>
entrySet()
Deprecated.Please use the corresponding type-specific method instead.boolean
equals(java.lang.Object o)
void
forEach(java.util.function.BiConsumer<? super java.lang.Integer,? super java.lang.Double> action)
double
getOrDefault(int key, double defaultValue)
Returns the value to which the specified key is mapped, or thedefaultValue
if this map contains no mapping for the key.java.lang.Double
getOrDefault(java.lang.Object key, java.lang.Double defaultValue)
Deprecated.Please use the corresponding type-specific method instead.int
hashCode()
ObjectSet<Int2DoubleMap.Entry>
int2DoubleEntrySet()
Returns a type-specific set view of the mappings contained in this map.boolean
isEmpty()
IntSet
keySet()
double
merge(int key, double value, java.util.function.BiFunction<? super java.lang.Double,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
If the specified key is not already associated with a value, associates it with the givenvalue
.java.lang.Double
merge(java.lang.Integer key, java.lang.Double value, java.util.function.BiFunction<? super java.lang.Double,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Deprecated.Please use the corresponding type-specific method instead.void
putAll(java.util.Map<? extends java.lang.Integer,? extends java.lang.Double> m)
double
putIfAbsent(int key, double value)
If the specified key is not already associated with a value, associates it with the given value and returns the default return value, else returns the current value.java.lang.Double
putIfAbsent(java.lang.Integer key, java.lang.Double value)
Deprecated.Please use the corresponding type-specific method instead.boolean
remove(int key, double value)
Removes the entry for the specified key only if it is currently mapped to the specified value.boolean
remove(java.lang.Object key, java.lang.Object value)
Deprecated.Please use the corresponding type-specific method instead.double
replace(int key, double value)
Replaces the entry for the specified key only if it is currently mapped to some value.boolean
replace(int key, double oldValue, double newValue)
Replaces the entry for the specified key only if currently mapped to the specified value.java.lang.Double
replace(java.lang.Integer key, java.lang.Double value)
Deprecated.Please use the corresponding type-specific method instead.boolean
replace(java.lang.Integer key, java.lang.Double oldValue, java.lang.Double newValue)
Deprecated.Please use the corresponding type-specific method instead.void
replaceAll(java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> function)
DoubleCollection
values()
-
Methods inherited from class it.unimi.dsi.fastutil.ints.Int2DoubleFunctions.SynchronizedFunction
apply, applyAsDouble, clear, containsKey, containsKey, defaultReturnValue, defaultReturnValue, get, get, put, put, remove, remove, size, toString
-
Methods inherited from interface it.unimi.dsi.fastutil.ints.Int2DoubleFunction
andThenByte, andThenChar, andThenDouble, andThenFloat, andThenInt, andThenLong, andThenObject, andThenReference, andThenShort, applyAsDouble, composeByte, composeChar, composeDouble, composeFloat, composeInt, composeLong, composeObject, composeReference, composeShort, get, put, remove
-
Methods inherited from interface it.unimi.dsi.fastutil.ints.Int2DoubleMap
clear, containsKey, containsKey, defaultReturnValue, defaultReturnValue, get, put, remove, size
-
-
-
-
Method Detail
-
containsValue
public boolean containsValue(double v)
Description copied from interface:Int2DoubleMap
Returnstrue
if this map maps one or more keys to the specified value.- Specified by:
containsValue
in interfaceInt2DoubleMap
- See Also:
Map.containsValue(Object)
-
containsValue
@Deprecated public boolean containsValue(java.lang.Object ov)
Deprecated.Please use the corresponding type-specific method instead.- Specified by:
containsValue
in interfaceInt2DoubleMap
- Specified by:
containsValue
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
putAll
public void putAll(java.util.Map<? extends java.lang.Integer,? extends java.lang.Double> m)
- Specified by:
putAll
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
int2DoubleEntrySet
public ObjectSet<Int2DoubleMap.Entry> int2DoubleEntrySet()
Description copied from interface:Int2DoubleMap
Returns a type-specific set view of the mappings contained in this map.This method is necessary because there is no inheritance along type parameters: it is thus impossible to strengthen
Map.entrySet()
so that it returns anObjectSet
of type-specific entries (the latter makes it possible to access keys and values with type-specific methods).- Specified by:
int2DoubleEntrySet
in interfaceInt2DoubleMap
- Returns:
- a type-specific set view of the mappings contained in this map.
- See Also:
Map.entrySet()
-
entrySet
@Deprecated public ObjectSet<java.util.Map.Entry<java.lang.Integer,java.lang.Double>> entrySet()
Deprecated.Please use the corresponding type-specific method instead.Returns a set view of the mappings contained in this map.Note that this specification strengthens the one given in
Map.entrySet()
.- Specified by:
entrySet
in interfaceInt2DoubleMap
- Specified by:
entrySet
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
- Returns:
- a set view of the mappings contained in this map.
- See Also:
Map.entrySet()
-
keySet
public IntSet keySet()
Description copied from interface:Int2DoubleMap
Note that this specification strengthens the one given in
Map.keySet()
.- Specified by:
keySet
in interfaceInt2DoubleMap
- Specified by:
keySet
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
- Returns:
- a set view of the keys contained in this map.
- See Also:
Map.keySet()
-
values
public DoubleCollection values()
Description copied from interface:Int2DoubleMap
Note that this specification strengthens the one given in
Map.values()
.- Specified by:
values
in interfaceInt2DoubleMap
- Specified by:
values
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
- Returns:
- a set view of the values contained in this map.
- See Also:
Map.values()
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
- Overrides:
hashCode
in classInt2DoubleFunctions.SynchronizedFunction
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
- Overrides:
equals
in classInt2DoubleFunctions.SynchronizedFunction
-
getOrDefault
public double getOrDefault(int key, double defaultValue)
Description copied from interface:Int2DoubleMap
Returns the value to which the specified key is mapped, or thedefaultValue
if this map contains no mapping for the key.- Specified by:
getOrDefault
in interfaceInt2DoubleMap
- Parameters:
key
- the key.defaultValue
- the default mapping of the key.- Returns:
- the value to which the specified key is mapped, or the
defaultValue
if this map contains no mapping for the key. - See Also:
Map.getOrDefault(Object, Object)
-
forEach
public void forEach(java.util.function.BiConsumer<? super java.lang.Integer,? super java.lang.Double> action)
- Specified by:
forEach
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
replaceAll
public void replaceAll(java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> function)
- Specified by:
replaceAll
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
putIfAbsent
public double putIfAbsent(int key, double value)
Description copied from interface:Int2DoubleMap
If the specified key is not already associated with a value, associates it with the given value and returns the default return value, else returns the current value.- Specified by:
putIfAbsent
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is to be associated.value
- value to be associated with the specified key.- Returns:
- the previous value associated with the specified key, or the default return value if there was no mapping for the key.
- See Also:
Map.putIfAbsent(Object, Object)
-
remove
public boolean remove(int key, double value)
Description copied from interface:Int2DoubleMap
Removes the entry for the specified key only if it is currently mapped to the specified value.- Specified by:
remove
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is associated.value
- value expected to be associated with the specified key.- Returns:
true
if the value was removed.- See Also:
Map.remove(Object, Object)
-
replace
public double replace(int key, double value)
Description copied from interface:Int2DoubleMap
Replaces the entry for the specified key only if it is currently mapped to some value.- Specified by:
replace
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is associated.value
- value to be associated with the specified key.- Returns:
- the previous value associated with the specified key, or the default return value if there was no mapping for the key.
- See Also:
Map.replace(Object, Object)
-
replace
public boolean replace(int key, double oldValue, double newValue)
Description copied from interface:Int2DoubleMap
Replaces the entry for the specified key only if currently mapped to the specified value.- Specified by:
replace
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is associated.oldValue
- value expected to be associated with the specified key.newValue
- value to be associated with the specified key.- Returns:
true
if the value was replaced.- See Also:
Map.replace(Object, Object, Object)
-
computeIfAbsent
public double computeIfAbsent(int key, java.util.function.IntToDoubleFunction mappingFunction)
Description copied from interface:Int2DoubleMap
If the specified key is not already associated with a value, attempts to compute its value using the given mapping function and enters it into this map.Note that contrarily to the default computeIfAbsent(), it is not possible to not add a value for a given key, since the
mappingFunction
cannot returnnull
. If such a behavior is needed, please use the corresponding nullable version.- Specified by:
computeIfAbsent
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is to be associated.mappingFunction
- the function to compute a value.- Returns:
- the current (existing or computed) value associated with the specified key.
- See Also:
Map.computeIfAbsent(Object, java.util.function.Function)
-
computeIfAbsentNullable
public double computeIfAbsentNullable(int key, java.util.function.IntFunction<? extends java.lang.Double> mappingFunction)
Description copied from interface:Int2DoubleMap
If the specified key is not already associated with a value, attempts to compute its value using the given mapping function and enters it into this map unless it isnull
.Note that this version of computeIfAbsent() should be used only if you plan to return
null
in the mapping function.- Specified by:
computeIfAbsentNullable
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is to be associated.mappingFunction
- the function to compute a value.- Returns:
- the current (existing or computed) value associated with the specified key,
or the default return value if the computed value is
null
. - See Also:
Map.computeIfAbsent(Object, java.util.function.Function)
-
computeIfAbsentPartial
public double computeIfAbsentPartial(int key, Int2DoubleFunction mappingFunction)
Description copied from interface:Int2DoubleMap
If the specified key is not already associated with a value, attempts to compute its value using the given mapping function and enters it into this map, unless the key is not present in the given mapping function.This version of computeIfAbsent() uses a type-specific version of
fastutil
'sFunction
. SinceFunction
has acontainsKey()
method, it is possible to avoid adding a key by havingcontainsKey()
returnfalse
for that key.- Specified by:
computeIfAbsentPartial
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is to be associated.mappingFunction
- the function to compute a value.- Returns:
- the current (existing or computed) value associated with the specified key.
- See Also:
Map.computeIfAbsent(Object, java.util.function.Function)
-
computeIfPresent
public double computeIfPresent(int key, java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Description copied from interface:Int2DoubleMap
If the value for the specified key is present, attempts to compute a new mapping given the key and its current mapped value.- Specified by:
computeIfPresent
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is to be associated.remappingFunction
- the function to compute a value.- Returns:
- the new value associated with the specified key, or the default return value if none.
- See Also:
Map.computeIfPresent(Object, java.util.function.BiFunction)
-
compute
public double compute(int key, java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Description copied from interface:Int2DoubleMap
Attempts to compute a mapping for the specified key and its current mapped value (ornull
if there is no current mapping).If the function returns
null
, the mapping is removed (or remains absent if initially absent). If the function itself throws an (unchecked) exception, the exception is rethrown, and the current mapping is left unchanged.- Specified by:
compute
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the specified value is to be associated.remappingFunction
- the function to compute a value.- Returns:
- the new value associated with the specified key, or the default return value if none.
- See Also:
Map.compute(Object, java.util.function.BiFunction)
-
merge
public double merge(int key, double value, java.util.function.BiFunction<? super java.lang.Double,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Description copied from interface:Int2DoubleMap
If the specified key is not already associated with a value, associates it with the givenvalue
. Otherwise, replaces the associated value with the results of the given remapping function, or removes if the result isnull
.- Specified by:
merge
in interfaceInt2DoubleMap
- Parameters:
key
- key with which the resulting value is to be associated.value
- the value to be merged with the existing value associated with the key or, if no existing value is associated with the key, to be associated with the key.remappingFunction
- the function to recompute a value if present.- Returns:
- the new value associated with the specified key, or the default return value if no value is associated with the key.
- See Also:
Map.merge(Object, Object, java.util.function.BiFunction)
-
getOrDefault
@Deprecated public java.lang.Double getOrDefault(java.lang.Object key, java.lang.Double defaultValue)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
getOrDefault
in interfaceInt2DoubleMap
- Specified by:
getOrDefault
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
remove
@Deprecated public boolean remove(java.lang.Object key, java.lang.Object value)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
remove
in interfaceInt2DoubleMap
- Specified by:
remove
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
replace
@Deprecated public java.lang.Double replace(java.lang.Integer key, java.lang.Double value)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
replace
in interfaceInt2DoubleMap
- Specified by:
replace
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
replace
@Deprecated public boolean replace(java.lang.Integer key, java.lang.Double oldValue, java.lang.Double newValue)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
replace
in interfaceInt2DoubleMap
- Specified by:
replace
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
putIfAbsent
@Deprecated public java.lang.Double putIfAbsent(java.lang.Integer key, java.lang.Double value)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
putIfAbsent
in interfaceInt2DoubleMap
- Specified by:
putIfAbsent
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
computeIfAbsent
@Deprecated public java.lang.Double computeIfAbsent(java.lang.Integer key, java.util.function.Function<? super java.lang.Integer,? extends java.lang.Double> mappingFunction)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
computeIfAbsent
in interfaceInt2DoubleMap
- Specified by:
computeIfAbsent
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
computeIfPresent
@Deprecated public java.lang.Double computeIfPresent(java.lang.Integer key, java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
computeIfPresent
in interfaceInt2DoubleMap
- Specified by:
computeIfPresent
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
compute
@Deprecated public java.lang.Double compute(java.lang.Integer key, java.util.function.BiFunction<? super java.lang.Integer,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
compute
in interfaceInt2DoubleMap
- Specified by:
compute
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
merge
@Deprecated public java.lang.Double merge(java.lang.Integer key, java.lang.Double value, java.util.function.BiFunction<? super java.lang.Double,? super java.lang.Double,? extends java.lang.Double> remappingFunction)
Deprecated.Please use the corresponding type-specific method instead.This default implementation just delegates to the corresponding
Map
method.- Specified by:
merge
in interfaceInt2DoubleMap
- Specified by:
merge
in interfacejava.util.Map<java.lang.Integer,java.lang.Double>
-
-