- java.lang.Object
-
- java.util.AbstractMap<K,V>
-
- java.util.concurrent.ConcurrentSkipListMap<K,V>
-
- 型パラメータ:
K
- このマップで保持されるキーの型V
- マップされる値の型
- すべての実装されたインタフェース:
Serializable
,Cloneable
,ConcurrentMap<K,V>
,ConcurrentNavigableMap<K,V>
,Map<K,V>
,NavigableMap<K,V>
,SortedMap<K,V>
public class ConcurrentSkipListMap<K,V> extends AbstractMap<K,V> implements ConcurrentNavigableMap<K,V>, Cloneable, Serializable
スケーラブルな並行ConcurrentNavigableMap
実装です。 マップは、使用するコンストラクタに応じて、そのキーの自然順序付けに従って、またはマップ作成時に提供されるComparator
によってソートされます。このクラスは、SkipListsの並行バリアントを実装して、containsKey、
get
、put
、およびremove
オペレーションとそれらのバリアントに予想される平均log(n)
時間コストを提供します。 挿入、削除、更新、アクセスの各オペレーションは、複数のスレッドによって並行して、安全に実行されます。イテレータおよびスプリッテレータは弱一貫性を持っています。
昇順のキーで並べられたビューとそのイテレータは、降順の場合よりも高速になります。
このクラス内のメソッドによって返されるすべての
Map.Entry
ペアとそのビューは、マッピングが生成された時点のそのスナップショットを表します。 これらはEntry.setValueメソッドをサポートしていません
。 ただし、必要とする効果に応じて、put
、putIfAbsent
、またはreplace
を使用して、関連付けられたマップ内のマッピングを変更できることに注意してください。大半のコレクションとは異なり、
size
メソッドは一定時間のオペレーションではないことに留意してください。 これらのマップには非同期という特性があるため、現在の要素数を判定するには要素のトラバーサルが必要になります。そのため、このコレクションがトラバーサル中に変更された場合は、不正確な結果が報告される可能性があります。 さらに、putAll
、equals
、toArray
、containsValue
およびclear
の一括オペレーションが原子的に実行されるという保証はありません。 たとえば、putAll
オペレーションと並行して動作しているイテレータは、追加された要素の一部しか表示しないことがあります。このクラスとそのビューおよびイテレータは、
Map
およびIterator
インタフェースのオプション・メソッドすべてを実装します。 他のほとんどの並行処理コレクションと同様、このクラスはnull
のキーまたは値の使用を許可しません。これは、一部のnullの戻り値は要素がない場合と確実に区別できないためです。このクラスは、Java Collections Frameworkのメンバーです。
- 導入されたバージョン:
- 1.6
- 関連項目:
- 直列化された形式
-
-
ネストされたクラスのサマリー
-
クラス java.util.AbstractMapから継承されたネストされたクラス/インタフェース
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 ConcurrentSkipListMap()
キーの自然順序付けに従ってソートされた、新しい空のマップを作成します。ConcurrentSkipListMap(Comparator<? super K> comparator)
指定されたコンパレータに従ってソートされた、新しい空のマップを作成します。ConcurrentSkipListMap(Map<? extends K,? extends V> m)
指定されたマップと同じマッピングを持ち、キーの自然順序付けに従ってソートされた新しいマップを作成します。ConcurrentSkipListMap(SortedMap<K,? extends V> m)
指定されたソート・マップと同じマッピングを持ち、同じ順序付けを使用する、新しいマップを作成します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 Map.Entry<K,V>
ceilingEntry(K key)
指定されたキー以上の、最小のキーと関連するキーと値のマッピングを返します。そのようなエントリが存在しない場合は、null
を返します。K
ceilingKey(K key)
指定されたキーと等しいかそれよりも大きいキーの中で最小のものを返します。そのようなキーが存在しない場合はnull
を返します。void
clear()
すべてのマッピングをマップから削除します。ConcurrentSkipListMap<K,V>
clone()
ConcurrentSkipListMap
のインスタンスのシャロー・コピーを返します。Comparator<? super K>
comparator()
このマップ内のキーを順序付けするのに使うコンパレータを返します。ただし、このマップがそのキーの自然順序付けを使う場合はnull
を返します。V
compute(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)
指定されたキーと現在マップされている値に対するマッピングの計算を試みます(現在のマッピングが存在しない場合はnull
)。V
computeIfAbsent(K key, Function<? super K,? extends V> mappingFunction)
指定されたキーがまだ値に関連付けられていない場合、指定されたマッピング関数を使用してその値の計算を試行し、null
でない場合はそれをこのマップに入力します。V
computeIfPresent(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)
指定されたキーの値が存在する場合、キーと現在マップされている値から新しいマッピングの計算を試みます。boolean
containsKey(Object key)
指定のキーのマッピングがマップに含まれている場合にtrue
を返します。boolean
containsValue(Object value)
マップが1つまたは複数のキーを指定された値にマッピングしている場合にtrue
を返します。NavigableSet<K>
descendingKeySet()
このマップに含まれるキーの逆順のNavigableSet
ビューを返します。ConcurrentNavigableMap<K,V>
descendingMap()
このマップ内に保持されているマッピングの逆順のビューを返します。Set<Map.Entry<K,V>>
entrySet()
このマップに含まれるマッピングのSet
ビューを返します。boolean
equals(Object o)
指定されたオブジェクトがこのマップと等しいかどうかを比較します。Map.Entry<K,V>
firstEntry()
マップ内の最小のキーに関連付けられたキーと値のマッピングを返します。マップが空の場合、null
を返します。K
firstKey()
マップ内に現在ある最初(下端)のキーを返します。Map.Entry<K,V>
floorEntry(K key)
指定されたキー以下の、最大のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。K
floorKey(K key)
指定されたキーと等しいかそれよりも小さいキーの中で最大のものを返します。そのようなキーが存在しない場合はnull
を返します。void
forEach(BiConsumer<? super K,? super V> action)
このマップのすべてのエントリの処理が完了するかアクションから例外がスローされるまで、各エントリに対して指定されたアクションを実行します。V
get(Object key)
指定されたキーがマップされている値を返します。このマップにそのキーのマッピングが含まれていない場合はnull
を返します。V
getOrDefault(Object key, V defaultValue)
指定されたキーがマップされる値を返します。このマップにそのキーのマッピングが含まれていない場合は、指定されたdefaultValueを返します。ConcurrentNavigableMap<K,V>
headMap(K toKey)
このマップのtoKey
よりも確実に小さいキーを持つ部分のビューを返します。ConcurrentNavigableMap<K,V>
headMap(K toKey, boolean inclusive)
このマップのtoKey
よりも小さいキー(inclusive
がtrueの場合はそれよりも小さいかそれと等しいキー)を含む部分のビューを返します。Map.Entry<K,V>
higherEntry(K key)
指定されたキーよりも確実に大きい、最小のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。K
higherKey(K key)
指定されたキーよりも確実に大きいキーの中で最小のものを返します。そのようなキーが存在しない場合はnull
を返します。boolean
isEmpty()
このマップがキーと値のマッピングを保持しない場合にtrue
を返します。NavigableSet<K>
keySet()
このマップに含まれるキーのNavigableSet
ビューを返します。Map.Entry<K,V>
lastEntry()
マップ内の最大のキーに関連付けられたキーと値のマッピングを返します。マップが空の場合、null
を返します。K
lastKey()
マップ内に現在ある最後(上端)のキーを返します。Map.Entry<K,V>
lowerEntry(K key)
指定されたキーよりも確実に小さい、最大のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。K
lowerKey(K key)
指定されたキーよりも確実に小さいキーの中で最大のものを返します。そのようなキーが存在しない場合はnull
を返します。V
merge(K key, V value, BiFunction<? super V,? super V,? extends V> remappingFunction)
指定されたキーがまだ値と関連付けられていない場合は、指定された値に関連付けます。NavigableSet<K>
navigableKeySet()
このマップに含まれるキーのNavigableSet
ビューを返します。Map.Entry<K,V>
pollFirstEntry()
マップ内の最小のキーに関連付けられたキーと値のマッピングを削除し、返します。マップが空の場合、null
を返します。Map.Entry<K,V>
pollLastEntry()
マップ内の最大のキーに関連付けられたキーと値のマッピングを削除し、返します。マップが空の場合、null
を返します。V
put(K key, V value)
指定された値と指定されたキーをこのマップに関連付けます。V
putIfAbsent(K key, V value)
指定されたキーがまだ値と関連付けられていない場合は、指定された値に関連付けます。V
remove(Object key)
指定されたキーのマッピングがあればマップから削除します。boolean
remove(Object key, Object value)
指定された値にキーが現在マッピングされている場合にのみ、そのキーのエントリを削除します。V
replace(K key, V value)
キーが値に現在マッピングされている場合にのみ、そのキーのエントリを置換します。boolean
replace(K key, V oldValue, V newValue)
指定された値にキーが現在マッピングされている場合にのみ、そのキーのエントリを置換します。void
replaceAll(BiFunction<? super K,? super V,? extends V> function)
すべてのエントリが処理されるか、または関数が例外をスローするまで、各エントリの値を、そのエントリで指定された関数を呼び出した結果で置換します。int
size()
このマップ内のキー値マッピングの数を返します。ConcurrentNavigableMap<K,V>
subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
このマップのfromKey
-toKey
のキー範囲を持つ部分のビューを返します。ConcurrentNavigableMap<K,V>
subMap(K fromKey, K toKey)
このマップのfromKey
(これを含む) -toKey
(これを含まない)のキー範囲を持つ部分のビューを返します。ConcurrentNavigableMap<K,V>
tailMap(K fromKey)
このマップのfromKey
以上のキーを持つ部分のビューを返します。ConcurrentNavigableMap<K,V>
tailMap(K fromKey, boolean inclusive)
このマップのfromKey
よりも大きいキー(inclusive
がtrueの場合はそれよりも大きいかそれと等しいキー)を含む部分のビューを返します。Collection<V>
values()
このマップに含まれる値のCollection
ビューを返します。-
クラス java.util.AbstractMapから継承されたメソッド
hashCode, putAll, toString
-
-
-
-
コンストラクタの詳細
-
ConcurrentSkipListMap
public ConcurrentSkipListMap()
キーの自然順序付けに従ってソートされた、新しい空のマップを作成します。
-
ConcurrentSkipListMap
public ConcurrentSkipListMap(Comparator<? super K> comparator)
指定されたコンパレータに従ってソートされた、新しい空のマップを作成します。- パラメータ:
comparator
- このマップの順序付けを行うために使用されるコンパレータ。null
の場合は、キーの自然順序付けが使用される。
-
ConcurrentSkipListMap
public ConcurrentSkipListMap(Map<? extends K,? extends V> m)
指定されたマップと同じマッピングを持ち、キーの自然順序付けに従ってソートされた新しいマップを作成します。- パラメータ:
m
- マッピングがこのマップに配置されるマップ- 例外:
ClassCastException
-m
内のキーがComparable
でないか、または相互に比較可能でない場合NullPointerException
- 指定されたマップ、またはそのキーと値のいずれかがnullの場合
-
ConcurrentSkipListMap
public ConcurrentSkipListMap(SortedMap<K,? extends V> m)
指定されたソート・マップと同じマッピングを持ち、同じ順序付けを使用する、新しいマップを作成します。- パラメータ:
m
- マッピングがこのマップに配置され、コンパレータがこのマップのソートに使用される、ソートされたマップ- 例外:
NullPointerException
- 指定されたソートされたマップ、またはそのキーと値のいずれかがnullの場合
-
-
メソッドの詳細
-
clone
public ConcurrentSkipListMap<K,V> clone()
ConcurrentSkipListMap
のインスタンスのシャロー・コピーを返します。 そのキーと値は複製されません。- オーバーライド:
clone
、クラス:AbstractMap<K,V>
- 戻り値:
- このマップのシャロー・コピー
- 関連項目:
Cloneable
-
containsKey
public boolean containsKey(Object key)
指定のキーのマッピングがマップに含まれている場合にtrue
を返します。- 定義:
containsKey
、インタフェース:Map<K,V>
- オーバーライド:
containsKey
、クラス:AbstractMap<K,V>
- パラメータ:
key
- このマップ内にあるかどうかが判定されるキー- 戻り値:
- このマップが指定されたキーのマッピングを保持する場合は
true
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
get
public V get(Object key)
指定されたキーがマップされている値を返します。このマップにそのキーのマッピングが含まれていない場合はnull
を返します。つまり、マップの順序付けに従って
key
がk
に等しくなるような、キーk
から値v
へのマッピングがこのマップに含まれている場合、このメソッドはv
を返します。それ以外の場合は、null
を返します。 (このようなマッピングは1つのみ存在できます。)- 定義:
get
、インタフェース:Map<K,V>
- オーバーライド:
get
、クラス:AbstractMap<K,V>
- パラメータ:
key
- 関連付けられた値が返されるキー- 戻り値:
- 指定されたキーがマップされている値。このマップにそのキーのマッピングが含まれていない場合は
null
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
getOrDefault
public V getOrDefault(Object key, V defaultValue)
指定されたキーがマップされる値を返します。このマップにそのキーのマッピングが含まれていない場合は、指定されたdefaultValueを返します。- 定義:
getOrDefault
、インタフェース:ConcurrentMap<K,V>
- 定義:
getOrDefault
、インタフェース:Map<K,V>
- パラメータ:
key
- キーdefaultValue
- このマップに指定されたキーのマッピングが含まれていない場合に返す値- 戻り値:
- 存在する場合はキーのマッピング。それ以外の場合はdefaultValue
- 例外:
NullPointerException
- 指定されたキーがnullである場合- 導入されたバージョン:
- 1.8
-
put
public V put(K key, V value)
指定された値と指定されたキーをこのマップに関連付けます。 マップが以前にこのキーのマッピングを保持していた場合、古い値が置き換えられます。- 定義:
put
、インタフェース:Map<K,V>
- オーバーライド:
put
、クラス:AbstractMap<K,V>
- パラメータ:
key
- 指定された値が関連付けられるキーvalue
- 指定されたキーに関連付けられる値- 戻り値:
- 指定されたキーに関連付けられた以前の値。キーのマッピングがなかった場合は
null
。 - 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーまたは値がnullの場合
-
remove
public V remove(Object key)
指定されたキーのマッピングがあればマップから削除します。- 定義:
remove
、インタフェース:Map<K,V>
- オーバーライド:
remove
、クラス:AbstractMap<K,V>
- パラメータ:
key
- マッピングを削除する必要があるキー- 戻り値:
- 指定されたキーに関連付けられた以前の値。キーのマッピングがなかった場合は
null
。 - 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
containsValue
public boolean containsValue(Object value)
マップが1つまたは複数のキーを指定された値にマッピングしている場合にtrue
を返します。 このオペレーションはマップのサイズに正比例した時間がかかります。 さらに、このメソッドの実行中にマップが変更される可能性があり、その場合は返される結果が不正確になることがあります。- 定義:
containsValue
、インタフェース:Map<K,V>
- オーバーライド:
containsValue
、クラス:AbstractMap<K,V>
- パラメータ:
value
- このマップにあるかどうかが判定される値- 戻り値:
value
へのマッピングが存在する場合はtrue
。それ以外の場合はfalse
- 例外:
NullPointerException
- 指定された値がnullである場合
-
size
public int size()
このマップ内のキー値マッピングの数を返します。 このマップにInteger.MAX_VALUE
を超える要素が含まれている場合は、Integer.MAX_VALUE
を返します。大半のコレクションとは異なり、このメソッドは一定時間のオペレーションではないことに留意してください。 これらのマップには非同期という特性があるため、現在の要素数を判定するには要素すべてをトラバースしてカウントする必要があります。 また、このメソッドの実行中にサイズが変更される可能性もあり、その場合、返される値は不正確になります。 そのため、このメソッドは、通常は並行処理アプリケーションではあまり便利ではありません。
-
isEmpty
public boolean isEmpty()
このマップがキーと値のマッピングを保持しない場合にtrue
を返します。
-
clear
public void clear()
すべてのマッピングをマップから削除します。
-
computeIfAbsent
public V computeIfAbsent(K key, Function<? super K,? extends V> mappingFunction)
指定されたキーがまだ値に関連付けられていない場合、指定されたマッピング関数を使用してその値の計算を試行し、null
でない場合はそれをこのマップに入力します。 値が存在しない場合にのみこの関数が原子的に1回適用されるという保証はありません。- 定義:
computeIfAbsent
、インタフェース:ConcurrentMap<K,V>
- 定義:
computeIfAbsent
、インタフェース:Map<K,V>
- パラメータ:
key
- 指定された値が関連付けられるキーmappingFunction
- 値を計算するための関数- 戻り値:
- 指定されたキーに関連付けられている現在の(既存の、または計算された)値。計算された値がnullである場合はnull
- 例外:
NullPointerException
- 指定されたキーがnullであるか、またはmappingFunctionがnullである場合- 導入されたバージョン:
- 1.8
-
computeIfPresent
public V computeIfPresent(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)
指定されたキーの値が存在する場合、キーと現在マップされている値から新しいマッピングの計算を試みます。 この関数が原子的に1回適用されるという保証はありません。- 定義:
computeIfPresent
、インタフェース:ConcurrentMap<K,V>
- 定義:
computeIfPresent
、インタフェース:Map<K,V>
- パラメータ:
key
- 値を関連付けることができるキーremappingFunction
- 値を計算するための関数- 戻り値:
- 指定されたキーに関連付けられる新しい値。存在しない場合はnull
- 例外:
NullPointerException
- 指定されたキーがnullであるか、またはremappingFunctionがnullである場合- 導入されたバージョン:
- 1.8
-
compute
public V compute(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)
指定されたキーと現在マップされている値に対するマッピングの計算を試みます(現在のマッピングが存在しない場合はnull
)。 この関数が原子的に1回適用されるという保証はありません。- 定義:
compute
、インタフェース:ConcurrentMap<K,V>
- 定義:
compute
、インタフェース:Map<K,V>
- パラメータ:
key
- 指定された値が関連付けられるキーremappingFunction
- 値を計算するための関数- 戻り値:
- 指定されたキーに関連付けられる新しい値。存在しない場合はnull
- 例外:
NullPointerException
- 指定されたキーがnullであるか、またはremappingFunctionがnullである場合- 導入されたバージョン:
- 1.8
-
merge
public V merge(K key, V value, BiFunction<? super V,? super V,? extends V> remappingFunction)
指定されたキーがまだ値と関連付けられていない場合は、指定された値に関連付けます。 それ以外の場合は、指定された再マッピング関数の結果で値を置換し、null
の場合は削除します。 この関数が原子的に1回適用されるという保証はありません。- 定義:
merge
、インタフェース:ConcurrentMap<K,V>
- 定義:
merge
、インタフェース:Map<K,V>
- パラメータ:
key
- 指定された値が関連付けられるキーvalue
- 値が存在しない場合に使用する値remappingFunction
- 値が存在する場合に値を再計算するための関数- 戻り値:
- 指定されたキーに関連付けられる新しい値。存在しない場合はnull
- 例外:
NullPointerException
- 指定されたキーまたは値がnullであるか、あるいはremappingFunctionがnullである場合- 導入されたバージョン:
- 1.8
-
keySet
public NavigableSet<K> keySet()
このマップに含まれるキーのNavigableSet
ビューを返します。セットのイテレータは、キーを昇順で返します。 セットのスプリッテレータはさらに、
Spliterator.CONCURRENT
、Spliterator.NONNULL
、Spliterator.SORTED
およびSpliterator.ORDERED
(キーの昇順である検出順序で)を報告します。 マップのコンパレータ(comparator()
を参照)がnull
である場合、スプリッテレータのコンパレータ(Spliterator.getComparator()
を参照)はnull
です。 それ以外の場合、スプリッテレータのコンパレータはマップのコンパレータと同じであるか、同じ全体順序付けを義務付けます。セットはマップと連動しているので、マップに対する変更はセットに反映され、また、セットに対する変更はマップに反映されます。 セットは要素の削除をサポートします。
Iterator.remove
、Set.remove
、removeAll
、retainAll
、およびclear
オペレーションで対応するマッピングをマップから削除します。add
またはaddAll
オペレーションはサポートされていません。ビューのイテレータおよびスプリッテレータは、弱一貫性を持っています。
このメソッドは、メソッド
navigableKeySet
と同等です。
-
navigableKeySet
public NavigableSet<K> navigableKeySet()
インタフェースからコピーされた説明:ConcurrentNavigableMap
このマップに含まれるキーのNavigableSet
ビューを返します。 セットのイテレータは、キーを昇順で返します。 セットはマップと連動しているので、マップに対する変更はセットに反映され、また、セットに対する変更はマップに反映されます。 セットは要素の削除をサポートします。Iterator.remove
、Set.remove
、removeAll
、retainAll
、およびclear
オペレーションで対応するマッピングをマップから削除します。add
またはaddAll
オペレーションはサポートされていません。ビューのイテレータおよびスプリッテレータは、弱一貫性を持っています。
- 定義:
navigableKeySet
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
navigableKeySet
、インタフェース:NavigableMap<K,V>
- 戻り値:
- このマップ内のキーのナビゲート可能なセット・ビュー
-
values
public Collection<V> values()
このマップに含まれる値のCollection
ビューを返します。コレクションのイテレータは、値を対応するキーの昇順で返します。 コレクションのスプリッテレータはさらに、
Spliterator.CONCURRENT
、Spliterator.NONNULL
およびSpliterator.ORDERED
(キーの昇順である検出順序で)を報告します。コレクションはマップと連動しているので、マップに対する変更はコレクションに反映され、またコレクションに対する変更はマップに反映されます。 コレクションは要素の削除をサポートしており、対応するマッピングをマップから削除できます。削除は、
Iterator.remove
、Collection.remove
、removeAll
、retainAll
、およびclear
オペレーションを通して行います。add
またはaddAll
オペレーションはサポートされていません。ビューのイテレータおよびスプリッテレータは、弱一貫性を持っています。
-
entrySet
public Set<Map.Entry<K,V>> entrySet()
このマップに含まれるマッピングのSet
ビューを返します。セットのイテレータは、エントリをキーの昇順で返します。 セットのスプリッテレータはさらに、
Spliterator.CONCURRENT
、Spliterator.NONNULL
、Spliterator.SORTED
およびSpliterator.ORDERED
(キーの昇順である検出順序で)を報告します。セットはマップと連動しているので、マップに対する変更はセットに反映され、また、セットに対する変更はマップに反映されます。 セットは要素の削除をサポートしており、対応するマッピングをマップから削除できます。削除は、
Iterator.remove
、Set.remove
、removeAll
、retainAll
、およびclear
オペレーションを通して行います。add
またはaddAll
オペレーションはサポートされていません。ビューのイテレータおよびスプリッテレータは、弱一貫性を持っています。
iterator
またはspliterator
によってトラバースされるMap.Entry
の要素は、setValue
オペレーションをサポートしません。
-
descendingMap
public ConcurrentNavigableMap<K,V> descendingMap()
インタフェースからコピーされた説明:ConcurrentNavigableMap
このマップ内に保持されているマッピングの逆順のビューを返します。 降順マップはこのマップに連動しており、このマップでの変更は降順マップに反映され、その逆の場合も同様です。返されるマップの順序付けは、
Collections.reverseOrder
(comparator())
と同等になります。 式m.descendingMap().descendingMap()
から返されるm
のビューは基本的にm
と同等になります。- 定義:
descendingMap
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
descendingMap
、インタフェース:NavigableMap<K,V>
- 戻り値:
- このマップの逆順のビュー
-
descendingKeySet
public NavigableSet<K> descendingKeySet()
インタフェースからコピーされた説明:ConcurrentNavigableMap
このマップに含まれるキーの逆順のNavigableSet
ビューを返します。 セットのイテレータは、キーを降順で返します。 セットはマップと連動しているので、マップに対する変更はセットに反映され、また、セットに対する変更はマップに反映されます。 セットは要素の削除をサポートします。Iterator.remove
、Set.remove
、removeAll
、retainAll
、およびclear
オペレーションで対応するマッピングをマップから削除します。add
またはaddAll
オペレーションはサポートされていません。ビューのイテレータおよびスプリッテレータは、弱一貫性を持っています。
- 定義:
descendingKeySet
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
descendingKeySet
、インタフェース:NavigableMap<K,V>
- 戻り値:
- このマップ内のキーのナビゲート可能な逆順セット・ビュー
-
equals
public boolean equals(Object o)
指定されたオブジェクトがこのマップと等しいかどうかを比較します。 指定されたオブジェクトもマップであり、2つのマップが同じマッピングを表す場合にtrue
を返します。 つまり、m1.entrySet().equals(m2.entrySet())
である場合、2つのマップm1
とm2
は同じマッピングを表します。 このオペレーションは、マップのいずれかがこのメソッドの実行中に並行して変更された場合、誤解を招きやすい結果を返すことがあります。- 定義:
equals
、インタフェース:Map<K,V>
- オーバーライド:
equals
、クラス:AbstractMap<K,V>
- パラメータ:
o
- このマップと等しいかどうかが比較されるオブジェクト- 戻り値:
- 指定されたオブジェクトがこのマップと等しい場合は
true
- 関連項目:
Object.hashCode()
、HashMap
-
putIfAbsent
public V putIfAbsent(K key, V value)
指定されたキーがまだ値と関連付けられていない場合は、指定された値に関連付けます。 これは、このmap
の場合と同じです:if (!map.containsKey(key)) return map.put(key, value); else return map.get(key);
- 定義:
putIfAbsent
、インタフェース:ConcurrentMap<K,V>
- 定義:
putIfAbsent
、インタフェース:Map<K,V>
- パラメータ:
key
- 指定された値が関連付けられるキーvalue
- 指定されたキーに関連付けられる値- 戻り値:
- 指定されたキーに関連付けられた以前の値。キーのマッピングがなかった場合は
null
。 - 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーまたは値がnullの場合
-
remove
public boolean remove(Object key, Object value)
指定された値にキーが現在マッピングされている場合にのみ、そのキーのエントリを削除します。 これは、このmap
の場合と同じです:if (map.containsKey(key) && Objects.equals(map.get(key), value)) { map.remove(key); return true; } else { return false; }
- 定義:
remove
、インタフェース:ConcurrentMap<K,V>
- 定義:
remove
、インタフェース:Map<K,V>
- パラメータ:
key
- 指定された値が関連付けられるキーvalue
- 指定されたキーに関連付けられていると予想される値- 戻り値:
- 値が削除された場合は
true
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
replace
public boolean replace(K key, V oldValue, V newValue)
指定された値にキーが現在マッピングされている場合にのみ、そのキーのエントリを置換します。 これは、このmap
の場合と同じです:if (map.containsKey(key) && Objects.equals(map.get(key), oldValue)) { map.put(key, newValue); return true; } else { return false; }
- 定義:
replace
、インタフェース:ConcurrentMap<K,V>
- 定義:
replace
、インタフェース:Map<K,V>
- パラメータ:
key
- 指定された値が関連付けられるキーoldValue
- 指定されたキーに関連付けられていると予想される値newValue
- 指定されたキーに関連付けられる値- 戻り値:
- 値が置換された場合は
true
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 引数が1つでもnullの場合
-
replace
public V replace(K key, V value)
キーが値に現在マッピングされている場合にのみ、そのキーのエントリを置換します。 これは、このmap
の場合と同じです:if (map.containsKey(key)) return map.put(key, value); else return null;
- 定義:
replace
、インタフェース:ConcurrentMap<K,V>
- 定義:
replace
、インタフェース:Map<K,V>
- パラメータ:
key
- 指定された値が関連付けられるキーvalue
- 指定されたキーに関連付けられる値- 戻り値:
- 指定されたキーに関連付けられた以前の値。キーのマッピングがなかった場合は
null
。 - 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーまたは値がnullの場合
-
comparator
public Comparator<? super K> comparator()
インタフェースからコピーされた説明:SortedMap
このマップ内のキーを順序付けするのに使うコンパレータを返します。ただし、このマップがそのキーの自然順序付けを使う場合はnull
を返します。- 定義:
comparator
、インタフェース:SortedMap<K,V>
- 戻り値:
- このマップ内のキーを順序付けするのに使うコンパレータ。このマップがそのキーの自然順序付けを使う場合は
null
-
firstKey
public K firstKey()
インタフェースからコピーされた説明:SortedMap
マップ内に現在ある最初(下端)のキーを返します。- 定義:
firstKey
、インタフェース:SortedMap<K,V>
- 戻り値:
- マップ内に現在ある最初(下端)のキー
- 例外:
NoSuchElementException
- マップが空の場合
-
lastKey
public K lastKey()
インタフェースからコピーされた説明:SortedMap
マップ内に現在ある最後(上端)のキーを返します。- 定義:
lastKey
、インタフェース:SortedMap<K,V>
- 戻り値:
- マップ内に現在ある最後(上端)のキー
- 例外:
NoSuchElementException
- マップが空の場合
-
subMap
public ConcurrentNavigableMap<K,V> subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
インタフェースからコピーされた説明:NavigableMap
このマップのfromKey
-toKey
のキー範囲を持つ部分のビューを返します。fromKey
とtoKey
が等しい場合、返されるマップは、fromInclusive
とtoInclusive
の両方がtrueでないかぎり、空になります。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートする任意のマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとしたり、端点のいずれかがその範囲外にあるようなサブマップが構築されようとしたりすると、
IllegalArgumentException
をスローします。- 定義:
subMap
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
subMap
、インタフェース:NavigableMap<K,V>
- パラメータ:
fromKey
- 返されるマップ内のキーの下端点fromInclusive
- 返されるビューに下端点が含まれる場合はtrue
toKey
- 返されるマップ内のキーの上端点toInclusive
- 返されるビューに上端点が含まれる場合はtrue
- 戻り値:
- このマップの
fromKey
-toKey
のキー範囲を持つ部分のビュー - 例外:
ClassCastException
- このマップのコンパレータを使用して(このマップがコンパレータを持たない場合は自然順序付けを使用して)、fromKey
とtoKey
を相互に比較できない場合。 実装は、マップ内に現在存在しているキーとfromKey
またはtoKey
とを比較できない場合にこの例外をスローすることができる。ただし、必須ではない。NullPointerException
-fromKey
またはtoKey
がnullである場合IllegalArgumentException
-fromKey
がtoKey
よりも大きい場合、またはこのマップ自体が制限された範囲を持っており、fromKey
またはtoKey
がその範囲から外れている場合
-
headMap
public ConcurrentNavigableMap<K,V> headMap(K toKey, boolean inclusive)
インタフェースからコピーされた説明:NavigableMap
このマップのtoKey
よりも小さいキー(inclusive
がtrueの場合はそれよりも小さいかそれと等しいキー)を含む部分のビューを返します。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートする任意のマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。- 定義:
headMap
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
headMap
、インタフェース:NavigableMap<K,V>
- パラメータ:
toKey
- 返されるマップ内のキーの上端点inclusive
- 返されるビューに上端点が含まれる場合はtrue
- 戻り値:
- このマップの
toKey
よりも小さいキー(inclusive
がtrueの場合はそれよりも小さいかそれと等しいキー)を含む部分のビュー - 例外:
ClassCastException
-toKey
がこのマップのコンパレータと互換性がない場合(または、そのマップがコンパレータを持たない場合、toKey
がComparable
を実装していない場合)。 実装は、マップ内に現在存在しているキーとtoKey
とを比較できない場合にこの例外をスローすることができる。ただし、必須ではない。NullPointerException
-toKey
がnullである場合IllegalArgumentException
- このマップ自体が制限された範囲を持っており、toKey
がその範囲から外れている場合
-
tailMap
public ConcurrentNavigableMap<K,V> tailMap(K fromKey, boolean inclusive)
インタフェースからコピーされた説明:NavigableMap
このマップのfromKey
よりも大きいキー(inclusive
がtrueの場合はそれよりも大きいかそれと等しいキー)を含む部分のビューを返します。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートする任意のマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。- 定義:
tailMap
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
tailMap
、インタフェース:NavigableMap<K,V>
- パラメータ:
fromKey
- 返されるマップ内のキーの下端点inclusive
- 返されるビューに下端点が含まれる場合はtrue
- 戻り値:
- このマップの
fromKey
よりも大きいキー(inclusive
がtrueの場合はそれよりも大きいかそれと等しいキー)を含む部分のビュー - 例外:
ClassCastException
-fromKey
がこのマップのコンパレータと互換性がない場合(または、そのマップがコンパレータを持たない場合、fromKey
がComparable
を実装していない場合)。 実装は、マップ内に現在存在しているキーとfromKey
とを比較できない場合にこの例外をスローすることができる。ただし、必須ではない。NullPointerException
-fromKey
がnullである場合IllegalArgumentException
- このマップ自体が制限された範囲を持っており、fromKey
がその範囲から外れている場合
-
subMap
public ConcurrentNavigableMap<K,V> subMap(K fromKey, K toKey)
インタフェースからコピーされた説明:NavigableMap
このマップのfromKey
(これを含む) -toKey
(これを含まない)のキー範囲を持つ部分のビューを返します。fromKey
とtoKey
が等しい場合は、空のマップが返されます。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートする任意のマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。subMap(fromKey, true, toKey, false)
と同等です。- 定義:
subMap
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
subMap
、インタフェース:NavigableMap<K,V>
- 定義:
subMap
、インタフェース:SortedMap<K,V>
- パラメータ:
fromKey
- 返されるマップ内のキーの下端点(これを含む)toKey
- 返されるマップ内のキーの上端点(これを含まない)- 戻り値:
- このマップの
fromKey
(これを含む) -toKey
(これを含まない)のキー範囲を持つ部分のビュー - 例外:
ClassCastException
- このマップのコンパレータを使用して(このマップがコンパレータを持たない場合は自然順序付けを使用して)、fromKey
とtoKey
を相互に比較できない場合。 実装は、マップ内に現在存在しているキーとfromKey
またはtoKey
とを比較できない場合にこの例外をスローすることができる。ただし、必須ではない。NullPointerException
-fromKey
またはtoKey
がnullである場合IllegalArgumentException
-fromKey
がtoKey
よりも大きい場合、またはこのマップ自体が制限された範囲を持っており、fromKey
またはtoKey
がその範囲から外れている場合
-
headMap
public ConcurrentNavigableMap<K,V> headMap(K toKey)
インタフェースからコピーされた説明:NavigableMap
このマップのtoKey
よりも確実に小さいキーを持つ部分のビューを返します。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートする任意のマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。headMap(toKey, false)
と同等です。- 定義:
headMap
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
headMap
、インタフェース:NavigableMap<K,V>
- 定義:
headMap
、インタフェース:SortedMap<K,V>
- パラメータ:
toKey
- 返されるマップ内のキーの上端点(これを含まない)- 戻り値:
- このマップの
toKey
よりも確実に小さいキーを持つ部分のビュー - 例外:
ClassCastException
-toKey
がこのマップのコンパレータと互換性がない場合(または、そのマップがコンパレータを持たない場合、toKey
がComparable
を実装していない場合)。 実装は、マップ内に現在存在しているキーとtoKey
とを比較できない場合にこの例外をスローすることができる。ただし、必須ではない。NullPointerException
-toKey
がnullである場合IllegalArgumentException
- このマップ自体が制限された範囲を持っており、toKey
がその範囲から外れている場合
-
tailMap
public ConcurrentNavigableMap<K,V> tailMap(K fromKey)
インタフェースからコピーされた説明:NavigableMap
このマップのfromKey
以上のキーを持つ部分のビューを返します。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートする任意のマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。tailMap(fromKey, true)
と同等です。- 定義:
tailMap
、インタフェース:ConcurrentNavigableMap<K,V>
- 定義:
tailMap
、インタフェース:NavigableMap<K,V>
- 定義:
tailMap
、インタフェース:SortedMap<K,V>
- パラメータ:
fromKey
- 返されるマップ内のキーの下端点(これを含む)- 戻り値:
- このマップの
fromKey
以上のキーを持つ部分のビュー - 例外:
ClassCastException
-fromKey
がこのマップのコンパレータと互換性がない場合(または、そのマップがコンパレータを持たない場合、fromKey
がComparable
を実装していない場合)。 実装は、マップ内に現在存在しているキーとfromKey
とを比較できない場合にこの例外をスローすることができる。ただし、必須ではない。NullPointerException
-fromKey
がnullである場合IllegalArgumentException
- このマップ自体が制限された範囲を持っており、fromKey
がその範囲から外れている場合
-
lowerEntry
public Map.Entry<K,V> lowerEntry(K key)
指定されたキーよりも確実に小さい、最大のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。 返されるエントリは、Entry.setValue
メソッドをサポートしません。- 定義:
lowerEntry
、インタフェース:NavigableMap<K,V>
- パラメータ:
key
- キー- 戻り値:
key
よりも小さいキーの中で最大のものを持つエントリ。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
lowerKey
public K lowerKey(K key)
インタフェースからコピーされた説明:NavigableMap
指定されたキーよりも確実に小さいキーの中で最大のものを返します。そのようなキーが存在しない場合はnull
を返します。- 定義:
lowerKey
、インタフェース:NavigableMap<K,V>
- パラメータ:
key
- キー- 戻り値:
key
よりも小さいキーの中で最大のもの。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
floorEntry
public Map.Entry<K,V> floorEntry(K key)
指定されたキー以下の、最大のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。 返されるエントリは、Entry.setValue
メソッドをサポートしません。- 定義:
floorEntry
、インタフェース:NavigableMap<K,V>
- パラメータ:
key
- キー- 戻り値:
key
と等しいか、それよりも小さいキーの中で最大のものを持つエントリ。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
floorKey
public K floorKey(K key)
インタフェースからコピーされた説明:NavigableMap
指定されたキーと等しいかそれよりも小さいキーの中で最大のものを返します。そのようなキーが存在しない場合はnull
を返します。- 定義:
floorKey
、インタフェース:NavigableMap<K,V>
- パラメータ:
key
- キー- 戻り値:
key
と等しいか、それよりも小さいキーの中で最大のもの。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
ceilingEntry
public Map.Entry<K,V> ceilingEntry(K key)
指定されたキー以上の、最小のキーと関連するキーと値のマッピングを返します。そのようなエントリが存在しない場合は、null
を返します。 返されるエントリは、Entry.setValue
メソッドをサポートしません。- 定義:
ceilingEntry
、インタフェース:NavigableMap<K,V>
- パラメータ:
key
- キー- 戻り値:
key
と等しいか、それよりも大きいキーの中で最小のものを持つエントリ。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
ceilingKey
public K ceilingKey(K key)
インタフェースからコピーされた説明:NavigableMap
指定されたキーと等しいかそれよりも大きいキーの中で最小のものを返します。そのようなキーが存在しない場合はnull
を返します。- 定義:
ceilingKey
、インタフェース:NavigableMap<K,V>
- パラメータ:
key
- キー- 戻り値:
key
と等しいか、それよりも大きいキーの中で最小のもの。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
higherEntry
public Map.Entry<K,V> higherEntry(K key)
指定されたキーよりも確実に大きい、最小のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。 返されるエントリは、Entry.setValue
メソッドをサポートしません。- 定義:
higherEntry
、インタフェース:NavigableMap<K,V>
- パラメータ:
key
- キー- 戻り値:
key
よりも大きいキーの中で最小のものを持つエントリ。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
higherKey
public K higherKey(K key)
インタフェースからコピーされた説明:NavigableMap
指定されたキーよりも確実に大きいキーの中で最小のものを返します。そのようなキーが存在しない場合はnull
を返します。- 定義:
higherKey
、インタフェース:NavigableMap<K,V>
- パラメータ:
key
- キー- 戻り値:
key
よりも大きいキーの中で最小のもの。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullである場合
-
firstEntry
public Map.Entry<K,V> firstEntry()
マップ内の最小のキーに関連付けられたキーと値のマッピングを返します。マップが空の場合、null
を返します。 返されるエントリは、Entry.setValue
メソッドをサポートしません。- 定義:
firstEntry
、インタフェース:NavigableMap<K,V>
- 戻り値:
- 最小のキーを持つエントリ。このマップが空の場合は
null
-
lastEntry
public Map.Entry<K,V> lastEntry()
マップ内の最大のキーに関連付けられたキーと値のマッピングを返します。マップが空の場合、null
を返します。 返されるエントリは、Entry.setValue
メソッドをサポートしません。- 定義:
lastEntry
、インタフェース:NavigableMap<K,V>
- 戻り値:
- 最大のキーを持つエントリ。このマップが空の場合は
null
-
pollFirstEntry
public Map.Entry<K,V> pollFirstEntry()
マップ内の最小のキーに関連付けられたキーと値のマッピングを削除し、返します。マップが空の場合、null
を返します。 返されるエントリは、Entry.setValue
メソッドをサポートしません。- 定義:
pollFirstEntry
、インタフェース:NavigableMap<K,V>
- 戻り値:
- このマップの削除された最初のエントリ。このマップが空の場合は
null
-
pollLastEntry
public Map.Entry<K,V> pollLastEntry()
マップ内の最大のキーに関連付けられたキーと値のマッピングを削除し、返します。マップが空の場合、null
を返します。 返されるエントリは、Entry.setValue
メソッドをサポートしません。- 定義:
pollLastEntry
、インタフェース:NavigableMap<K,V>
- 戻り値:
- このマップの削除された最後のエントリ。このマップが空の場合は
null
-
forEach
public void forEach(BiConsumer<? super K,? super V> action)
インタフェースからコピーされた説明:ConcurrentMap
このマップのすべてのエントリの処理が完了するかアクションから例外がスローされるまで、各エントリに対して指定されたアクションを実行します。 実装クラスで指定されない場合は、エントリ・セットの反復の順序でアクションが実行されます(反復順序が指定されている場合)。 アクションによってスローされた例外は、呼出し側に中継されます。
-
replaceAll
public void replaceAll(BiFunction<? super K,? super V,? extends V> function)
インタフェースからコピーされた説明:ConcurrentMap
すべてのエントリが処理されるか、または関数が例外をスローするまで、各エントリの値を、そのエントリで指定された関数を呼び出した結果で置換します。 関数によってスローされた例外は、呼出し側に中継されます。- 定義:
replaceAll
、インタフェース:ConcurrentMap<K,V>
- 定義:
replaceAll
、インタフェース:Map<K,V>
- パラメータ:
function
- 各エントリに適用する関数
-
-