public static class Object2ObjectMaps.SynchronizedMap<K,V> extends Object2ObjectFunctions.SynchronizedFunction<K,V> implements Object2ObjectMap<K,V>, java.io.Serializable
Object2ObjectMap.Entry<K,V>, Object2ObjectMap.FastEntrySet<K,V>
Modifier and Type | Method and Description |
---|---|
V |
compute(K key,
java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
Attempts to compute a mapping for the specified key and its current mapped value (or
null if there is no current mapping). |
V |
computeIfPresent(K key,
java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
If the value for the specified key is present, attempts to compute a new mapping given the key and its current mapped value.
|
boolean |
containsValue(java.lang.Object v) |
ObjectSet<java.util.Map.Entry<K,V>> |
entrySet()
Returns a set view of the mappings contained in this map.
|
boolean |
equals(java.lang.Object o) |
void |
forEach(java.util.function.BiConsumer<? super K,? super V> action) |
V |
getOrDefault(java.lang.Object key,
V defaultValue)
Returns the value associated by this function to the specified key, or give the specified
value if not present.
|
int |
hashCode() |
boolean |
isEmpty() |
ObjectSet<K> |
keySet() |
V |
merge(K key,
V value,
java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
If the specified key is not already associated with a value, associates it with the given
value . |
ObjectSet<Object2ObjectMap.Entry<K,V>> |
object2ObjectEntrySet()
Returns a type-specific set view of the mappings contained in this map.
|
void |
putAll(java.util.Map<? extends K,? extends V> m) |
V |
putIfAbsent(K key,
V 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.
|
boolean |
remove(java.lang.Object key,
java.lang.Object value)
Removes the entry for the specified key only if it is currently mapped to the specified value.
|
V |
replace(K key,
V value)
Replaces the entry for the specified key only if it is currently mapped to some value.
|
boolean |
replace(K key,
V oldValue,
V newValue)
Replaces the entry for the specified key only if currently mapped to the specified value.
|
void |
replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function) |
ObjectCollection<V> |
values() |
apply, clear, containsKey, defaultReturnValue, defaultReturnValue, get, put, remove, size, toString
clear, computeIfAbsent, computeObjectIfAbsentPartial, containsKey, defaultReturnValue, defaultReturnValue, put, remove, size
andThenByte, andThenChar, andThenDouble, andThenFloat, andThenInt, andThenLong, andThenObject, andThenReference, andThenShort, composeByte, composeChar, composeDouble, composeFloat, composeInt, composeLong, composeObject, composeReference, composeShort, get
public boolean containsValue(java.lang.Object v)
public ObjectSet<Object2ObjectMap.Entry<K,V>> object2ObjectEntrySet()
Object2ObjectMap
This method is necessary because there is no inheritance along
type parameters: it is thus impossible to strengthen Map.entrySet()
so that it returns an ObjectSet
of type-specific entries (the latter makes it possible to
access keys and values with type-specific methods).
object2ObjectEntrySet
in interface Object2ObjectMap<K,V>
Map.entrySet()
public ObjectSet<java.util.Map.Entry<K,V>> entrySet()
public ObjectSet<K> keySet()
Object2ObjectMap
public ObjectCollection<V> values()
Object2ObjectMap
public int hashCode()
public boolean equals(java.lang.Object o)
public V getOrDefault(java.lang.Object key, V defaultValue)
Object2ObjectFunction
getOrDefault
in interface Object2ObjectFunction<K,V>
getOrDefault
in interface Object2ObjectMap<K,V>
getOrDefault
in interface java.util.Map<K,V>
getOrDefault
in class Object2ObjectFunctions.SynchronizedFunction<K,V>
key
- the key.defaultValue
- the value to return if not present.defaultValue
if no value was present for the given key.Function.getOrDefault(Object, Object)
public void replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
public V putIfAbsent(K key, V value)
Object2ObjectMap
putIfAbsent
in interface Object2ObjectMap<K,V>
putIfAbsent
in interface java.util.Map<K,V>
key
- key with which the specified value is to be associated.value
- value to be associated with the specified key.Map.putIfAbsent(Object, Object)
public boolean remove(java.lang.Object key, java.lang.Object value)
Object2ObjectMap
remove
in interface Object2ObjectMap<K,V>
remove
in interface java.util.Map<K,V>
key
- key with which the specified value is associated.value
- value expected to be associated with the specified key.true
if the value was removed.Map.remove(Object, Object)
public V replace(K key, V value)
Object2ObjectMap
replace
in interface Object2ObjectMap<K,V>
replace
in interface java.util.Map<K,V>
key
- key with which the specified value is associated.value
- value to be associated with the specified key.Map.replace(Object, Object)
public boolean replace(K key, V oldValue, V newValue)
Object2ObjectMap
replace
in interface Object2ObjectMap<K,V>
replace
in interface java.util.Map<K,V>
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.true
if the value was replaced.Map.replace(Object, Object, Object)
public V computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
Object2ObjectMap
computeIfPresent
in interface Object2ObjectMap<K,V>
computeIfPresent
in interface java.util.Map<K,V>
key
- key with which the specified value is to be associated.remappingFunction
- the function to compute a value.Map.computeIfPresent(Object, java.util.function.BiFunction)
public V compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
Object2ObjectMap
null
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.
compute
in interface Object2ObjectMap<K,V>
compute
in interface java.util.Map<K,V>
key
- key with which the specified value is to be associated.remappingFunction
- the function to compute a value.Map.compute(Object, java.util.function.BiFunction)
public V merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
Object2ObjectMap
value
.
Otherwise, replaces the associated value with the results of the given remapping function, or removes if the result is null
.merge
in interface Object2ObjectMap<K,V>
merge
in interface java.util.Map<K,V>
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.Map.merge(Object, Object, java.util.function.BiFunction)