java.util.concurrent.ConcurrentMap<K, V> |
Known Indirect Subclasses
|
A
Map
providing additional atomic
putIfAbsent
,
remove
, and
replace
methods.
Memory consistency effects: As with other concurrent
collections, actions in a thread prior to placing an object into a
ConcurrentMap
as a key or value
happen-before
actions subsequent to the access or removal of that object from
the
ConcurrentMap
in another thread.
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
If the specified key is not already associated
with a value, associate it with the given value.
|
||||||||||
|
Removes the entry for a key only if currently mapped to a given value.
|
||||||||||
|
Replaces the entry for a key only if currently mapped to a given value.
|
||||||||||
|
Replaces the entry for a key only if currently mapped to some value.
|
[Expand]
Inherited Methods
|
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From interface
java.util.Map
|
If the specified key is not already associated with a value, associate it with the given value. This is equivalent to
if (!map.containsKey(key))
return map.put(key, value);
else
return map.get(key);
except that the action is performed atomically.
key | key with which the specified value is to be associated |
---|---|
value | value to be associated with the specified key |
null
if there was no mapping for the key.
(A
null
return can also indicate that the map
previously associated
null
with the key,
if the implementation supports null values.)
UnsupportedOperationException |
if the
put
operation
is not supported by this map
|
---|---|
ClassCastException | if the class of the specified key or value prevents it from being stored in this map |
NullPointerException | if the specified key or value is null, and this map does not permit null keys or values |
IllegalArgumentException | if some property of the specified key or value prevents it from being stored in this map |
Removes the entry for a key only if currently mapped to a given value. This is equivalent to
if (map.containsKey(key) && map.get(key).equals(value)) {
map.remove(key);
return true;
else
return false;}
except that the action is performed atomically.
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
UnsupportedOperationException |
if the
remove
operation
is not supported by this map
|
---|---|
ClassCastException | if the key or value is of an inappropriate type for this map ( optional ) |
NullPointerException | if the specified key or value is null, and this map does not permit null keys or values ( optional ) |
Replaces the entry for a key only if currently mapped to a given value. This is equivalent to
if (map.containsKey(key) && map.get(key).equals(oldValue)) {
map.put(key, newValue);
return true;
else
return false;}
except that the action is performed atomically.
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
UnsupportedOperationException |
if the
put
operation
is not supported by this map
|
---|---|
ClassCastException | if the class of a specified key or value prevents it from being stored in this map |
NullPointerException | if a specified key or value is null, and this map does not permit null keys or values |
IllegalArgumentException | if some property of a specified key or value prevents it from being stored in this map |
Replaces the entry for a key only if currently mapped to some value. This is equivalent to
if (map.containsKey(key)) {
return map.put(key, value);
else
return null;}
except that the action is performed atomically.
key | key with which the specified value is associated |
---|---|
value | value to be associated with the specified key |
null
if there was no mapping for the key.
(A
null
return can also indicate that the map
previously associated
null
with the key,
if the implementation supports null values.)
UnsupportedOperationException |
if the
put
operation
is not supported by this map
|
---|---|
ClassCastException | if the class of the specified key or value prevents it from being stored in this map |
NullPointerException | if the specified key or value is null, and this map does not permit null keys or values |
IllegalArgumentException | if some property of the specified key or value prevents it from being stored in this map |