-
- 型パラメータ:
K
- このマップで保持されるキーの型V
- マップされる値の型
- 既知のすべてのサブインタフェース:
ConcurrentNavigableMap<K,V>
- 既知のすべての実装クラス:
ConcurrentSkipListMap
,TreeMap
public interface NavigableMap<K,V> extends SortedMap<K,V>
指定の検索ターゲットにもっとも近い一致内容を返すナビゲーション・メソッドで拡張されたSortedMap
です。 メソッドlowerEntry(K)
、floorEntry(K)
、ceilingEntry(K)
、およびhigherEntry(K)
は、キーに関連付けられたMap.Entry
オブジェクトを返します。キーがない場合はnull
を返します。指定されたキーより小さい、小さい、等しい、大きい、等しい、大きい。 同様に、メソッドlowerKey(K)
、floorKey(K)
、ceilingKey(K)
、およびhigherKey(K)
は、関連するキーだけを返します。 これらのすべてのメソッドの設計目的は、エントリをトラバースすることではなく、エントリを特定することです。NavigableMap
へのアクセスやトラバースは、キーの昇順、降順のいずれかで行えます。descendingMap()
メソッドは、すべての関係メソッドと方向メソッドの感覚が反転したマップのビューを返します。 オペレーションやビューのパフォーマンスは通常、降順よりも昇順のほうが高速になります。 メソッドsubMap(K, boolean, K, boolean)
、headMap(K, boolean)
、およびtailMap(K, boolean)
は、SortedMap
メソッドとは異なり、下限と上限が排他的か排他的かを記述する追加の引数を受け入れます。 どのNavigableMap
のサブマップでもNavigableMap
インタフェースを実装する必要があります。このインタフェースでは、最小のマッピングと最大のマッピングがあればそれを返すか削除するメソッド
firstEntry()
、pollFirstEntry()
、lastEntry()
、およびpollLastEntry()
が追加されています。存在しない場合はnull
を返します。エントリを返すメソッドの実装は、マッピングの生成時点でのスナップショットを表す
Map.Entry
ペアを返すことを期待されるため、オプションのEntry.setValue
メソッドを通常はサポートしません。 ただし、関連するマップ内のマッピングはput
メソッドを使って変更できます。subMap(K, K)
、headMap(K)
およびtailMap(K)
メソッドは、既存のSortedMap
実装を互換的に改良してNavigableMap
を実装できるようにするために、SortedMap
を返すように規定されています。ただし、このインタフェースの拡張および実装は、これらのメソッドをオーバーライドしてNavigableMap
を返すようにすることをお薦めします。 同様に、SortedMap.keySet()
はNavigableSet
を返すようにオーバーライドすることができます。このインタフェースは、Java Collections Frameworkのメンバーです。
- 導入されたバージョン:
- 1.6
-
-
メソッドのサマリー
修飾子と型 メソッド 説明 Map.Entry<K,V>
ceilingEntry(K key)
指定されたキー以上の、最小のキーと関連するキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。K
ceilingKey(K key)
指定されたキーと等しいかそれよりも大きいキーの中で最小のものを返します。そのようなキーが存在しない場合はnull
を返します。NavigableSet<K>
descendingKeySet()
このマップに含まれるキーの逆順のNavigableSet
ビューを返します。NavigableMap<K,V>
descendingMap()
このマップ内に保持されているマッピングの逆順のビューを返します。Map.Entry<K,V>
firstEntry()
このマップ内の最小のキーに関連付けられたキーと値のマッピングを返します。マップが空の場合、null
を返します。Map.Entry<K,V>
floorEntry(K key)
指定されたキー以下の、最大のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。K
floorKey(K key)
指定されたキーと等しいかそれよりも小さいキーの中で最大のものを返します。そのようなキーが存在しない場合はnull
を返します。SortedMap<K,V>
headMap(K toKey)
このマップのtoKey
よりも確実に小さいキーを持つ部分のビューを返します。NavigableMap<K,V>
headMap(K toKey, boolean inclusive)
このマップのtoKey
よりも小さいキー(inclusive
がtrueの場合はそれよりも小さいかそれと等しいキー)を含む部分のビューを返します。Map.Entry<K,V>
higherEntry(K key)
指定されたキーよりも確実に大きい、最小のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。K
higherKey(K key)
指定されたキーよりも確実に大きいキーの中で最小のものを返します。そのようなキーが存在しない場合はnull
を返します。Map.Entry<K,V>
lastEntry()
このマップ内の最大のキーに関連付けられたキーと値のマッピングを返します。マップが空の場合、null
を返します。Map.Entry<K,V>
lowerEntry(K key)
指定されたキーよりも確実に小さい、最大のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。K
lowerKey(K key)
指定されたキーよりも確実に小さいキーの中で最大のものを返します。そのようなキーが存在しない場合はnull
を返します。NavigableSet<K>
navigableKeySet()
このマップに含まれるキーのNavigableSet
ビューを返します。Map.Entry<K,V>
pollFirstEntry()
このマップ内の最小のキーに関連付けられたキーと値のマッピングを削除し、返します。マップが空の場合、null
を返します。Map.Entry<K,V>
pollLastEntry()
このマップ内の最大のキーに関連付けられたキーと値のマッピングを削除し、返します。マップが空の場合、null
を返します。NavigableMap<K,V>
subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
このマップのfromKey
-toKey
のキー範囲を持つ部分のビューを返します。SortedMap<K,V>
subMap(K fromKey, K toKey)
このマップのfromKey
(これを含む) -toKey
(これを含まない)のキー範囲を持つ部分のビューを返します。SortedMap<K,V>
tailMap(K fromKey)
このマップのfromKey
以上のキーを持つ部分のビューを返します。NavigableMap<K,V>
tailMap(K fromKey, boolean inclusive)
このマップのfromKey
よりも大きいキー(inclusive
がtrueの場合はそれよりも大きいかそれと等しいキー)を含む部分のビューを返します。-
インタフェース java.util.Mapで宣言されたメソッド
clear, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, equals, forEach, get, getOrDefault, hashCode, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size
-
-
-
-
メソッドの詳細
-
lowerEntry
Map.Entry<K,V> lowerEntry(K key)
指定されたキーよりも確実に小さい、最大のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。- パラメータ:
key
- キー- 戻り値:
key
よりも小さいキーの中で最大のものを持つエントリ。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullであり、このマップがnullキーを許可しない場合
-
lowerKey
K lowerKey(K key)
指定されたキーよりも確実に小さいキーの中で最大のものを返します。そのようなキーが存在しない場合はnull
を返します。- パラメータ:
key
- キー- 戻り値:
key
よりも小さいキーの中で最大のもの。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullであり、このマップがnullキーを許可しない場合
-
floorEntry
Map.Entry<K,V> floorEntry(K key)
指定されたキー以下の、最大のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。- パラメータ:
key
- キー- 戻り値:
key
と等しいか、それよりも小さいキーの中で最大のものを持つエントリ。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullであり、このマップがnullキーを許可しない場合
-
floorKey
K floorKey(K key)
指定されたキーと等しいかそれよりも小さいキーの中で最大のものを返します。そのようなキーが存在しない場合はnull
を返します。- パラメータ:
key
- キー- 戻り値:
key
と等しいか、それよりも小さいキーの中で最大のもの。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullであり、このマップがnullキーを許可しない場合
-
ceilingEntry
Map.Entry<K,V> ceilingEntry(K key)
指定されたキー以上の、最小のキーと関連するキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。- パラメータ:
key
- キー- 戻り値:
key
と等しいか、それよりも大きいキーの中で最小のものを持つエントリ。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullであり、このマップがnullキーを許可しない場合
-
ceilingKey
K ceilingKey(K key)
指定されたキーと等しいかそれよりも大きいキーの中で最小のものを返します。そのようなキーが存在しない場合はnull
を返します。- パラメータ:
key
- キー- 戻り値:
key
と等しいか、それよりも大きいキーの中で最小のもの。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullであり、このマップがnullキーを許可しない場合
-
higherEntry
Map.Entry<K,V> higherEntry(K key)
指定されたキーよりも確実に大きい、最小のキーに関連付けられたキーと値のマッピングを返します。そのようなキーが存在しない場合は、null
を返します。- パラメータ:
key
- キー- 戻り値:
key
よりも大きいキーの中で最小のものを持つエントリ。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullであり、このマップがnullキーを許可しない場合
-
higherKey
K higherKey(K key)
指定されたキーよりも確実に大きいキーの中で最小のものを返します。そのようなキーが存在しない場合はnull
を返します。- パラメータ:
key
- キー- 戻り値:
key
よりも大きいキーの中で最小のもの。そのようなキーが存在しない場合はnull
- 例外:
ClassCastException
- 指定されたキーがマップ内に現在あるキーと比較できない場合NullPointerException
- 指定されたキーがnullであり、このマップがnullキーを許可しない場合
-
firstEntry
Map.Entry<K,V> firstEntry()
このマップ内の最小のキーに関連付けられたキーと値のマッピングを返します。マップが空の場合、null
を返します。- 戻り値:
- 最小のキーを持つエントリ。このマップが空の場合は
null
-
lastEntry
Map.Entry<K,V> lastEntry()
このマップ内の最大のキーに関連付けられたキーと値のマッピングを返します。マップが空の場合、null
を返します。- 戻り値:
- 最大のキーを持つエントリ。このマップが空の場合は
null
-
pollFirstEntry
Map.Entry<K,V> pollFirstEntry()
このマップ内の最小のキーに関連付けられたキーと値のマッピングを削除し、返します。マップが空の場合、null
を返します。- 戻り値:
- このマップの削除された最初のエントリ。このマップが空の場合は
null
-
pollLastEntry
Map.Entry<K,V> pollLastEntry()
このマップ内の最大のキーに関連付けられたキーと値のマッピングを削除し、返します。マップが空の場合、null
を返します。- 戻り値:
- このマップの削除された最後のエントリ。このマップが空の場合は
null
-
descendingMap
NavigableMap<K,V> descendingMap()
このマップ内に保持されているマッピングの逆順のビューを返します。 降順マップはこのマップに連動しており、このマップでの変更は降順マップに反映され、その逆の場合も同様です。 いずれかのマップのコレクション・ビューの反復処理中にいずれかのマップが変更された場合、反復処理の結果は定義されていません(イテレータ自身のremove
オペレーションを除く)。返されるマップの順序付けは、
Collections.reverseOrder
(comparator())
と同等になります。 式m.descendingMap().descendingMap()
から返されるm
のビューは基本的にm
と同等になります。- 戻り値:
- このマップの逆順のビュー
-
navigableKeySet
NavigableSet<K> navigableKeySet()
このマップに含まれるキーのNavigableSet
ビューを返します。 セットのイテレータは、キーを昇順で返します。 セットはマップと連動しているので、マップに対する変更はセットに反映され、また、セットに対する変更はマップに反映されます。 セットの反復処理中にマップが変更された場合、反復処理の結果は定義されていません(イテレータ自身のremove
操作を除く)。 セットは要素の削除をサポートします。Iterator.remove
、Set.remove
、removeAll
、retainAll
、およびclear
オペレーションで対応するマッピングをマップから削除します。add
またはaddAll
操作はサポートされていません。- 戻り値:
- このマップ内のキーのナビゲート可能なセット・ビュー
-
descendingKeySet
NavigableSet<K> descendingKeySet()
このマップに含まれるキーの逆順のNavigableSet
ビューを返します。 セットのイテレータは、キーを降順で返します。 セットはマップと連動しているので、マップに対する変更はセットに反映され、また、セットに対する変更はマップに反映されます。 セットの反復処理中にマップが変更された場合、反復処理の結果は定義されていません(イテレータ自身のremove
操作を除く)。 セットは要素の削除をサポートします。Iterator.remove
、Set.remove
、removeAll
、retainAll
、およびclear
オペレーションで対応するマッピングをマップから削除します。add
またはaddAll
操作はサポートされていません。- 戻り値:
- このマップ内のキーのナビゲート可能な逆順セット・ビュー
-
subMap
NavigableMap<K,V> subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
このマップのfromKey
-toKey
のキー範囲を持つ部分のビューを返します。fromKey
とtoKey
が等しい場合、返されるマップは、fromInclusive
とtoInclusive
の両方がtrueでないかぎり、空になります。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートするオプションのマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとしたり、端点のいずれかがその範囲外にあるようなサブマップが構築されようとしたりすると、
IllegalArgumentException
をスローします。- パラメータ:
fromKey
- 返されるマップ内のキーの下端点fromInclusive
- 返されるビューに下端点が含まれる場合はtrue
toKey
- 返されるマップ内のキーの上端点toInclusive
- 返されるビューに上端点が含まれる場合はtrue
- 戻り値:
- このマップの
fromKey
-toKey
のキー範囲を持つ部分のビュー - 例外:
ClassCastException
- このマップのコンパレータを使用して(このマップがコンパレータを持たない場合は自然順序付けを使用して)、fromKey
とtoKey
を相互に比較できない場合。 実装は、マップ内に現在存在しているキーとfromKey
またはtoKey
とを比較できない場合にこの例外をスローできる。ただし、必須ではない。NullPointerException
-fromKey
またはtoKey
がnullであり、このマップがnullキーを許可しない場合IllegalArgumentException
-fromKey
がtoKey
よりも大きい場合、またはこのマップ自体が制限された範囲を持っており、fromKey
またはtoKey
がその範囲から外れている場合
-
headMap
NavigableMap<K,V> headMap(K toKey, boolean inclusive)
このマップのtoKey
よりも小さいキー(inclusive
がtrueの場合はそれよりも小さいかそれと等しいキー)を含む部分のビューを返します。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートするオプションのマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。- パラメータ:
toKey
- 返されるマップ内のキーの上端点inclusive
- 返されるビューに上端点が含まれる場合はtrue
- 戻り値:
- このマップの
toKey
よりも小さいキー(inclusive
がtrueの場合はそれよりも小さいかそれと等しいキー)を含む部分のビュー - 例外:
ClassCastException
-toKey
がこのマップのコンパレータと互換性がない場合(または、そのマップがコンパレータを持たない場合、toKey
がComparable
を実装していない場合)。 実装は、マップ内に現在存在しているキーとtoKey
とを比較できない場合にこの例外をスローできる。ただし、必須ではないNullPointerException
-toKey
がnullであり、このマップがnullキーを許可しない場合IllegalArgumentException
- このマップ自体が制限された範囲を持っており、toKey
がその範囲から外れている場合
-
tailMap
NavigableMap<K,V> tailMap(K fromKey, boolean inclusive)
このマップのfromKey
よりも大きいキー(inclusive
がtrueの場合はそれよりも大きいかそれと等しいキー)を含む部分のビューを返します。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートするオプションのマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。- パラメータ:
fromKey
- 返されるマップ内のキーの下端点inclusive
- 返されるビューに下端点が含まれる場合はtrue
- 戻り値:
- このマップの
fromKey
よりも大きいキー(inclusive
がtrueの場合はそれよりも大きいかそれと等しいキー)を含む部分のビュー - 例外:
ClassCastException
-fromKey
がこのマップのコンパレータと互換性がない場合(または、そのマップがコンパレータを持たない場合、fromKey
がComparable
を実装していない場合)。 実装は、マップ内に現在存在しているキーとfromKey
とを比較できない場合にこの例外をスローできる。ただし、必須ではないNullPointerException
-fromKey
がnullであり、このマップがnullキーを許可しない場合IllegalArgumentException
- このマップ自体が制限された範囲を持っており、fromKey
がその範囲から外れている場合
-
subMap
SortedMap<K,V> subMap(K fromKey, K toKey)
このマップのfromKey
(これを含む) -toKey
(これを含まない)のキー範囲を持つ部分のビューを返します。fromKey
とtoKey
が等しい場合は、空のマップが返されます。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートするオプションのマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。subMap(fromKey, true, toKey, false)
と同等です。- 定義:
- インタフェース
SortedMap<K,V>
内のsubMap
- パラメータ:
fromKey
- 返されるマップ内のキーの下端点(これを含む)toKey
- 返されるマップ内のキーの上端点(これを含まない)- 戻り値:
- このマップの
fromKey
(これを含む)からtoKey
(これを含まない)のキー範囲を持つ部分のビュー - 例外:
ClassCastException
- このマップのコンパレータを使用して(このマップがコンパレータを持たない場合は自然順序付けを使用して)、fromKey
とtoKey
を相互に比較できない場合。 実装は、マップ内に現在存在しているキーとfromKey
またはtoKey
とを比較できない場合にこの例外をスローできる。ただし、必須ではない。NullPointerException
-fromKey
またはtoKey
がnullであり、このマップがnullキーを許可しない場合IllegalArgumentException
-fromKey
がtoKey
よりも大きい場合、またはこのマップ自体が制限された範囲を持っており、fromKey
またはtoKey
がその範囲から外れている場合
-
headMap
SortedMap<K,V> headMap(K toKey)
このマップのtoKey
よりも確実に小さいキーを持つ部分のビューを返します。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートするオプションのマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。headMap(toKey, false)
と同等です。- 定義:
- インタフェース
SortedMap<K,V>
内のheadMap
- パラメータ:
toKey
- 返されるマップ内のキーの上端点(これを含まない)- 戻り値:
- このマップの
toKey
よりも確実に小さいキーを持つ部分のビュー - 例外:
ClassCastException
-toKey
がこのマップのコンパレータと互換性がない場合(または、そのマップがコンパレータを持たない場合、toKey
がComparable
を実装していない場合)。 実装は、マップ内に現在存在しているキーとtoKey
とを比較できない場合にこの例外をスローできる。ただし、必須ではないNullPointerException
-toKey
がnullであり、このマップがnullキーを許可しない場合IllegalArgumentException
- このマップ自体が制限された範囲を持っており、toKey
がその範囲から外れている場合
-
tailMap
SortedMap<K,V> tailMap(K fromKey)
このマップのfromKey
以上のキーを持つ部分のビューを返します。 返されるマップはこのマップに連動しており、返されるマップでの変更はこのマップに反映され、その逆の場合も同様です。 返されるマップは、このマップがサポートするオプションのマップ・オペレーションをすべてサポートします。返されるマップは、その範囲外のキーが挿入されようとすると、
IllegalArgumentException
をスローします。tailMap(fromKey, true)
と同等です。- 定義:
- インタフェース
SortedMap<K,V>
内のtailMap
- パラメータ:
fromKey
- 返されるマップ内のキーの下端点(これを含む)- 戻り値:
- このマップの
fromKey
以上のキーを持つ部分のビュー - 例外:
ClassCastException
-fromKey
がこのマップのコンパレータと互換性がない場合(または、そのマップがコンパレータを持たない場合、fromKey
がComparable
を実装していない場合)。 実装は、マップ内に現在存在しているキーとfromKey
とを比較できない場合にこの例外をスローできる。ただし、必須ではないNullPointerException
-fromKey
がnullであり、このマップがnullキーを許可しない場合IllegalArgumentException
- このマップ自体が制限された範囲を持っており、fromKey
がその範囲から外れている場合
-
-