K - このマップで保持されるキーの型V - マップされる値の型public interface ConcurrentMap<K,V> extends Map<K,V>
Map です。
メモリー整合性効果: ほかの並行処理コレクションと同様、オブジェクトをキーまたは値として ConcurrentMap に配置する前のスレッド内のアクションは、別のスレッド内のそのオブジェクトへのアクセスまたは ConcurrentMap からの削除に続くアクションの前に発生します。
このインタフェースは、Java Collections Framework のメンバーです。
| 修飾子と型 | メソッドと説明 |
|---|---|
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 - このマップが null キーや null 値を許可しないときに、指定されたキーまたは値が null の場合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 - 指定されたキーまたは値が null であり、かつこのマップが null のキーまたは値を許可しない場合 (省略可能)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 - 指定されたキーまたは値が null であり、このマップが null のキーまたは値を許可しない場合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 - このマップが null キーや null 値を許可しないときに、指定されたキーまたは値が null の場合IllegalArgumentException - 指定されたキーまたは値のあるプロパティーが原因で、このマップに格納できない場合 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.