Spec-Zone .ru
спецификации, руководства, описания, API
|
K
- тип ключей сохраняется этой картойV
- тип отображенных значенийpublic interface ConcurrentMap<K,V> extends Map<K,V>
Map
обеспечивая дополнительный атомарный putIfAbsent, remove, и методы replace. Эффекты непротиворечивости памяти: Как с другими параллельными наборами, действиями в потоке до размещения объекта в a ConcurrentMap
поскольку ключ или значение происходят - перед действиями, последующими за доступом или удалением того объекта от ConcurrentMap
в другом потоке.
Этот интерфейс является элементом Платформы Наборов Java.
Модификатор и Тип | Метод и Описание |
---|---|
V |
putIfAbsent(K key, V value)
Если указанный ключ уже не связывается со значением, свяжите его с данным значением.
|
boolean |
remove(Object key, Object value)
Удаляет запись для ключа только если в настоящий момент отображенный на данное значение.
|
V |
replace(K key, V value)
Заменяет запись для ключа только если в настоящий момент отображенный на некоторое значение.
|
boolean |
replace(K key, V oldValue, V newValue)
Заменяет запись для ключа только если в настоящий момент отображенный на данное значение.
|
V putIfAbsent(K key, V value)
if (!map.containsKey(key)) return map.put(key, value); else return map.get(key);за исключением того, что действие выполняется атомарно.
key
- ключ, с которым должно быть связано указанное значениеvalue
- значение, которое будет связано с указанным ключомUnsupportedOperationException
- если работа put не поддерживается этой картойClassCastException
- если класс указанного ключа или значения препятствует тому, чтобы это было сохранено в этой картеNullPointerException
- если указанный ключ или значение являются нулем, и эта карта не разрешает нулевые ключи или значенияIllegalArgumentException
- если некоторое свойство указанного ключа или значения препятствует тому, чтобы это было сохранено в этой картеboolean remove(Object key, Object value)
if (map.containsKey(key) && map.get(key).equals(value)) { map.remove(key); return true; } else return false;за исключением того, что действие выполняется атомарно.
key
- ключ, с которым связывается указанное значениеvalue
- значение, которое, как ожидают, будет связано с указанным ключомUnsupportedOperationException
- если работа remove не поддерживается этой картойClassCastException
- если ключ или значение имеют несоответствующий тип для этой (дополнительной) картыNullPointerException
- если указанный ключ или значение являются нулем, и эта карта не разрешает нулевые ключи или оценивает (дополнительный)boolean replace(K key, V oldValue, V newValue)
if (map.containsKey(key) && map.get(key).equals(oldValue)) { map.put(key, newValue); return true; } else return false;за исключением того, что действие выполняется атомарно.
key
- ключ, с которым связывается указанное значениеoldValue
- значение, которое, как ожидают, будет связано с указанным ключомnewValue
- значение, которое будет связано с указанным ключомUnsupportedOperationException
- если работа put не поддерживается этой картойClassCastException
- если класс указанного ключа или значения препятствует тому, чтобы это было сохранено в этой картеNullPointerException
- если указанный ключ или значение являются нулем, и эта карта не разрешает нулевые ключи или значенияIllegalArgumentException
- если некоторое свойство указанного ключа или значения препятствует тому, чтобы это было сохранено в этой картеV replace(K key, V value)
if (map.containsKey(key)) { return map.put(key, value); } else return null;за исключением того, что действие выполняется атомарно.
key
- ключ, с которым связывается указанное значениеvalue
- значение, которое будет связано с указанным ключомUnsupportedOperationException
- если работа put не поддерживается этой картойClassCastException
- если класс указанного ключа или значения препятствует тому, чтобы это было сохранено в этой картеNullPointerException
- если указанный ключ или значение являются нулем, и эта карта не разрешает нулевые ключи или значенияIllegalArgumentException
- если некоторое свойство указанного ключа или значения препятствует тому, чтобы это было сохранено в этой карте
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.