|
Spec-Zone .ru
спецификации, руководства, описания, API
|
K - тип ключей сохраняется этой картойV - тип отображенных значенийpublic interface SortedMap<K,V> extends Map<K,V>
Map тот далее обеспечивает полное упорядочивание на его ключах. Карта упорядочивается согласно естественному упорядочиванию ее ключей, или a Comparator обычно, если в сортированное время создания карты. Этот порядок отражается, выполняя итерации по представлениям набора сортированной карты (возвращенный entrySet, keySet и values методы). Несколько дополнительных операций обеспечиваются, чтобы использовать в своих интересах упорядочивание. (Этот интерфейс является аналогом карты SortedSet.) Все ключи, вставленные в сортированную карту, должны реализовать Comparable интерфейс (или быть принятым указанным компаратором). Кроме того все такие ключи должны быть взаимно сопоставимыми: k1.compareTo(k2) (или comparator.compare(k1, k2)) не должен бросить a ClassCastException для любых ключей k1 и k2 в сортированной карте. Попытки нарушить это ограничение заставят незаконный метод или вызов конструктора бросать a ClassCastException.
Отметьте, что упорядочивание, сохраняемое сортированной картой (обеспечивается ли явный компаратор), должно быть непротиворечивым с, равняется, если сортированная карта должна правильно реализовать Map интерфейс. (См. Comparable интерфейс или Comparator интерфейс для точного определения непротиворечивых с равняется.) Это так потому что Map интерфейс определяется с точки зрения equals работа, но сортированная карта выполняет все ключевые сравнения, используя compareTo (или compare) метод, таким образом, два ключа, которые считает равными этот метод, с точки зрения сортированной карты, равной. Поведение древовидной карты четко определено, даже если ее упорядочивание непоследовательно с, равняется; это только не в состоянии повиноваться общему контракту Map интерфейс.
Все сортированные классы реализации карты общего назначения должны предоставить четырем "стандартным" конструкторам. Не возможно осуществить эту рекомендацию, хотя как требуется конструкторы не могут быть определены интерфейсами. Ожидаемые "стандартные" конструкторы для всех сортированных реализаций карты:
Comparator, который создает пустую сортированную карту, сортированную согласно указанному компаратору.Map, который создает новую карту с теми же самыми отображениями значения ключа как его параметр, сортированный согласно естественному упорядочиванию ключей.SortedMap, который создает новую сортированную карту с теми же самыми отображениями значения ключа и тем же самым упорядочиванием как ввод сортированная карта.Отметьте: несколько методов возвращают подкарты с ограниченными диапазонами ключей. Такие диапазоны являются полуоткрытыми, то есть, они включают свою низкую конечную точку, но не свою высокую конечную точку (где применимый). Если Вы нуждаетесь в закрытом диапазоне (который включает обе конечных точки), и ключевой тип учитывает вычисление преемника данного ключа, просто запросите поддиапазон от lowEndpoint к successor(highEndpoint). Например, предположите это m карта, ключи которой являются строками. Следующая идиома получает представление, содержащее все отображения значения ключа в m чьи ключи между low и high, включительно:
SortedMap<String, V> sub = m.subMap(low, high+"\0");Подобный метод может использоваться, чтобы генерировать открытый диапазон (который не содержит никакую конечную точку). Следующая идиома получает представление, содержащее все отображения значения ключа в
m чьи ключи между low и high, монопольный:SortedMap<String, V> sub = m.subMap(low+"\0", high);
Этот интерфейс является элементом Платформы Наборов Java.
Map, TreeMap, SortedSet, Comparator, Comparable, Collection, ClassCastException| Модификатор и Тип | Метод и Описание |
|---|---|
Comparator<? super K> |
comparator()
Возвращает компаратор, используемый, чтобы упорядочить ключи в этой карте, или
null если эта карта использует естественное упорядочивание своих ключей. |
Set<Map.Entry<K,V>> |
entrySet()
Возвраты a
Set представление отображений содержится в этой карте. |
K |
firstKey()
Возвращает первый (самый низкий) ключ в настоящий момент в этой карте.
|
SortedMap<K,V> |
headMap(K toKey)
Возвращает представление части этой карты, ключи которой являются строго меньше чем
toKey. |
Set<K> |
keySet()
Возвраты a
Set представление ключей содержится в этой карте. |
K |
lastKey()
Возвращает последний (самый высокий) ключ в настоящий момент в этой карте.
|
SortedMap<K,V> |
subMap(K fromKey, K toKey)
Возвращает представление части этой карты, ключи которой располагаются от
fromKey, включительно, к toKey, монопольный. |
SortedMap<K,V> |
tailMap(K fromKey)
Возвращает представление части этой карты, ключи которой больше чем или равны
fromKey. |
Collection<V> |
values()
Возвраты a
Collection представление значений содержится в этой карте. |
clear, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, equals, forEach, get, getOrDefault, hashCode, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, sizeComparator<? super K> comparator()
null если эта карта использует естественное упорядочивание своих ключей.null если эта карта использует естественное упорядочивание своих ключейSortedMap<K,V> subMap(K fromKey, K toKey)
fromKey, включительно, к toKey, монопольный. (Если fromKey и toKey равны, возвращенная карта пуста.) Возвращенная карта поддерживается этой картой, таким образом, изменения в возвращенной карте отражаются в этой карте, и наоборот. Возвращенная карта поддерживает все дополнительные операции карты, которые поддерживает эта карта. Возвращенная карта бросит IllegalArgumentException на попытке вставить ключевую внешнюю сторону ее диапазон.
fromKey - низкая конечная точка (включительно) ключей в возвращенной картеtoKey - высокая конечная точка (монопольная) из ключей в возвращенной картеfromKey, включительно, к toKey, монопольныйClassCastException - если fromKey и toKey не может быть по сравнению с друг другом, используя компаратор этой карты (или, если у карты нет никакого компаратора, используя естественное упорядочивание). Реализации, но не обязаны, может выдать это исключение если fromKey или toKey не может быть по сравнению с ключами в настоящий момент в карте.NullPointerException - если fromKey или toKey нуль, и эта карта не разрешает нулевые ключиIllegalArgumentException - если fromKey больше чем toKey; или если у этой самой карты есть ограниченный диапазон, и fromKey или toKey находится вне границ диапазонаSortedMap<K,V> headMap(K toKey)
toKey. Возвращенная карта поддерживается этой картой, таким образом, изменения в возвращенной карте отражаются в этой карте, и наоборот. Возвращенная карта поддерживает все дополнительные операции карты, которые поддерживает эта карта. Возвращенная карта бросит IllegalArgumentException на попытке вставить ключевую внешнюю сторону ее диапазон.
toKey - высокая конечная точка (монопольная) из ключей в возвращенной картеtoKeyClassCastException - если toKey не является совместимым с компаратором этой карты (или, если у карты нет никакого компаратора, если toKey не реализует Comparable). Реализации, но не обязаны, может выдать это исключение если toKey не может быть по сравнению с ключами в настоящий момент в карте.NullPointerException - если toKey нуль, и эта карта не разрешает нулевые ключиIllegalArgumentException - если у этой самой карты есть ограниченный диапазон, и toKey находится вне границ диапазонаSortedMap<K,V> tailMap(K fromKey)
fromKey. Возвращенная карта поддерживается этой картой, таким образом, изменения в возвращенной карте отражаются в этой карте, и наоборот. Возвращенная карта поддерживает все дополнительные операции карты, которые поддерживает эта карта. Возвращенная карта бросит IllegalArgumentException на попытке вставить ключевую внешнюю сторону ее диапазон.
fromKey - низкая конечная точка (включительно) ключей в возвращенной картеfromKeyClassCastException - если fromKey не является совместимым с компаратором этой карты (или, если у карты нет никакого компаратора, если fromKey не реализует Comparable). Реализации, но не обязаны, может выдать это исключение если fromKey не может быть по сравнению с ключами в настоящий момент в карте.NullPointerException - если fromKey нуль, и эта карта не разрешает нулевые ключиIllegalArgumentException - если у этой самой карты есть ограниченный диапазон, и fromKey находится вне границ диапазонаK firstKey()
NoSuchElementException - если эта карта пустаK lastKey()
NoSuchElementException - если эта карта пустаSet<K> keySet()
Set представление ключей содержится в этой карте. iterator набора возвращает ключи в порядке по возрастанию. Набор поддерживается картой, так изменения к карте отражаются в наборе, и наоборот. Если карта изменяется, в то время как итерация по набору происходит (кроме через собственный iterator's remove работа), результаты итерации неопределены. Набор поддерживает удаление элемента, которое удаляет соответствующее отображение из карты, через Iterator.remove, Set.remove, removeAll, retainAll, и clear операции. Это не поддерживает add или addAll операции.Collection<V> values()
Collection представление значений содержится в этой карте. iterator набора возвращает значения в порядке возрастания соответствующих ключей. Набор поддерживается картой, так изменения к карте отражаются в наборе, и наоборот. Если карта изменяется, в то время как итерация по набору происходит (кроме через собственный iterator's remove работа), результаты итерации неопределены. Набор поддерживает удаление элемента, которое удаляет соответствующее отображение из карты, через Iterator.remove, Collection.remove, removeAll, retainAll и clear операции. Это не поддерживает add или addAll операции.Set<Map.Entry<K,V>> entrySet()
Set представление отображений содержится в этой карте. iterator набора возвращает записи в возрастающем ключевом порядке. Набор поддерживается картой, так изменения к карте отражаются в наборе, и наоборот. Если карта изменяется, в то время как итерация по набору происходит (кроме через собственный iterator's remove работа, или через setValue работа на записи карты, возвращенной iterator), результаты итерации неопределены. Набор поддерживает удаление элемента, которое удаляет соответствующее отображение из карты, через Iterator.remove, Set.remove, removeAll, retainAll и clear операции. Это не поддерживает add или addAll операции.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92