java.util.concurrent.ConcurrentMap<K, V> |
Known Indirect Subclasses
ConcurrentHashMap<K, V> |
A hash table supporting full concurrency of retrievals and
adjustable expected concurrency for updates. |
|
Class Overview
A Map providing additional atomic
putIfAbsent, remove, and replace methods.
Summary
Public Methods |
abstract
V
|
putIfAbsent(K key, V value)
If the specified key is not already associated
with a value, associate it with the given value.
|
abstract
boolean
|
remove(Object key, Object value)
Remove entry for key only if currently mapped to given value.
|
abstract
boolean
|
replace(K key, V oldValue, V newValue)
Replace entry for key only if currently mapped to given value.
|
abstract
V
|
replace(K key, V value)
Replace entry for key only if currently mapped to some value.
|
[Expand]
Inherited Methods |
From interface java.util.Map
abstract
void
|
clear()
Removes all elements from this Map , leaving it empty.
|
abstract
boolean
|
containsKey(Object key)
Returns whether this Map contains the specified key.
|
abstract
boolean
|
containsValue(Object value)
Returns whether this Map contains the specified value.
|
abstract
Set<Entry<K, V>>
|
entrySet()
Returns a Set containing all of the mappings in this Map .
|
abstract
boolean
|
equals(Object object)
Compares the argument to the receiver, and returns true if the
specified object is a Map and both Map s contain the same mappings.
|
abstract
V
|
get(Object key)
Returns the value of the mapping with the specified key.
|
abstract
int
|
hashCode()
Returns an integer hash code for the receiver.
|
abstract
boolean
|
isEmpty()
Returns whether this map is empty.
|
abstract
Set<K>
|
keySet()
Returns a set of the keys contained in this Map .
|
abstract
V
|
put(K key, V value)
Maps the specified key to the specified value.
|
abstract
void
|
putAll(Map<? extends K, ? extends V> map)
Copies every mapping in the specified Map to this Map .
|
abstract
V
|
remove(Object key)
Removes a mapping with the specified key from this Map .
|
abstract
int
|
size()
Returns the number of mappings in this Map .
|
abstract
Collection<V>
|
values()
Returns a Collection of the values contained in this Map .
|
|
Public Methods
public
abstract
V
putIfAbsent
(K key, V value)
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.
Parameters
key
| key with which the specified value is to be associated. |
value
| value to be associated with the specified key. |
Returns
- previous value associated with specified key, or null
if there was no mapping for key. A null return can
also indicate that the map previously associated null
with the specified key, if the implementation supports
null values.
public
abstract
boolean
remove
(Object key, Object value)
Remove entry for key only if currently mapped to given value.
Acts as
if ((map.containsKey(key) && map.get(key).equals(value)) {
map.remove(key);
return true;
} else return false;
except that the action is performed atomically.
Parameters
key
| key with which the specified value is associated. |
value
| value associated with the specified key. |
Returns
- true if the value was removed, false otherwise
Throws
NullPointerException
| if this map does not permit null
keys or values, and the specified key or value is
null.
|
public
abstract
boolean
replace
(K key, V oldValue, V newValue)
Replace entry for key only if currently mapped to given value.
Acts as
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.
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
Throws
NullPointerException
| if this map does not permit null
keys or values, and the specified key or value is
null.
|
public
abstract
V
replace
(K key, V value)
Replace entry for key only if currently mapped to some value.
Acts as
if ((map.containsKey(key)) {
return map.put(key, value);
} else return null;
except that the action is performed atomically.
Parameters
key
| key with which the specified value is associated. |
value
| value to be associated with the specified key. |
Returns
- previous value associated with specified key, or null
if there was no mapping for key. A null return can
also indicate that the map previously associated null
with the specified key, if the implementation supports
null values.
Throws
NullPointerException
| if this map does not permit null
keys or values, and the specified key or value is
null.
|