Spec-Zone.ru › OpenJDK 8

Класс ConcurrentHashMap.KeySetView<K,V>

  • java.lang.Object
    • java.util.concurrent.ConcurrentHashMap.KeySetView<K,V>
Все реализованные интерфейсы:
Serializable, Iterable<K>, Collection<K>, Set<K>
Вложенный класс:
ConcurrentHashMap<K,V>

public static class ConcurrentHashMap.KeySetView<K,V>
extends Object
implements Set<K>, Serializable

Представление ConcurrentHashMap как Set ключей, в котором добавление может быть необязательно включено, сопоставляя ключи с общим значением. Этот класс нельзя создать напрямую. Смотрите keySet(), keySet(V), newKeySet(), newKeySet(int).

С тех пор:
1.8
См. также:
Сериализованная форма

Методы

Модификатор и тип Метод и описание
boolean add(K e)

Добавляет указанный ключ в это множество, сопоставляя ключ с значением по умолчанию в базовой карте, если оно определено.

boolean addAll(Collection<? extends K> c)

Добавляет все элементы из указанного набора в это множество, как если бы вызывали add(K) для каждого из них.

void clear()

Удаляет все элементы из этого представления, удаляя все сопоставления из карты, лежащей в основе этого представления.

boolean contains(Object o)

Возвращает true, если эта коллекция содержит указанный элемент.

boolean containsAll(Collection<?> c)

Возвращает true, если эта коллекция содержит все элементы из указанной коллекции.

boolean equals(Object o)

Указывает, является ли другой объект "равным" этому.

void forEach(Consumer<? super K> action)

Выполняет заданное действие для каждого элемента Iterable , пока все элементы не будут обработаны или действие не выбросит исключение.

ConcurrentHashMap<K,V> getMap()

Возвращает карту, лежащую в основе этого представления.

V getMappedValue()

Возвращает значение по умолчанию для добавлений или null, если добавления не поддерживаются.

int hashCode()

Возвращает хэш-код объекта.

boolean isEmpty()

Возвращает true, если эта коллекция не содержит элементов.

Iterator<K> iterator()

Возвращает итератор по элементам в этой коллекции.

boolean remove(Object o)

Удаляет ключ из этого представления карты, удалив ключ (и соответствующее значение) из базовой карты.

boolean removeAll(Collection<?> c)

Удаляет все элементы этой коллекции, которые также содержатся в указанной коллекции (необязательная операция).

boolean retainAll(Collection<?> c)

Оставляет только элементы в этой коллекции, которые содержатся в указанной коллекции (необязательная операция).

int size()

Возвращает количество элементов в этой коллекции.

Spliterator<K> spliterator()

Создаёт Spliterator по элементам в этом множестве.

Object[] toArray()

Возвращает массив, содержащий все элементы в этой коллекции.

<T> T[] toArray(T[] a)

Возвращает массив, содержащий все элементы в этой коллекции; тип возвращаемого массива соответствует указанному массиву.

String toString()

Возвращает строковое представление этой коллекции.

Методы, унаследованные от класса java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Методы, унаследованные от интерфейса java.util.Set

clear, containsAll, isEmpty, removeAll, retainAll, size, toArray, toArray

Методы, унаследованные от интерфейса java.util.Collection

parallelStream, removeIf, stream

Методы

getMappedValue

public V getMappedValue()

Возвращает значение по умолчанию для добавлений или null если добавления не поддерживаются.

Возвращает:
значение по умолчанию для добавлений или null если не поддерживается

contains

public boolean contains(Object o)

Возвращает true если эта коллекция содержит указанный элемент. Более формально, возвращает true тогда и только тогда, когда эта коллекция содержит по крайней мере один элемент e такой, что (o==null ? e==null : o.equals(e)).

Указано в:
contains в интерфейсе Collection<K>
Указано в:
contains в интерфейсе Set<K>
Параметры:
o - элемент, присутствие которого в этой коллекции должно быть проверено
Возвращает:
true если эта коллекция содержит указанный элемент
Выбрасывает:
NullPointerException - если указанный ключ равен null

remove

public boolean remove(Object o)

Удаляет ключ из этого представления карты, удалив ключ (и соответствующее значение) из базовой карты. Этот метод ничего не делает, если ключ не находится в карте.

Указано в:
remove в интерфейсе Collection<K>
Указано в:
remove в интерфейсе Set<K>
Параметры:
o - ключ, который должен быть удален из базовой карты
Возвращает:
true если базовая карта содержала указанный ключ
Выбрасывает:
NullPointerException - если указанный ключ равен null

iterator

public Iterator<K> iterator()

Возвращает итератор по элементам в этой коллекции.

Возвращаемый итератор является слабо согласованным.

Указано в:
iterator в интерфейсе Iterable<K>
Указано в:
iterator в интерфейсе Collection<K>
Указано в:
iterator в интерфейсе Set<K>
Возвращает:
итератор по ключам базовой карты

add

public boolean add(K e)

Добавляет указанный ключ к этому представлению набора, сопоставляя ключ со значением по умолчанию в базовой карте, если оно определено.

Указано в:
add в интерфейсе Collection<K>
Указано в:
add в интерфейсе Set<K>
Параметры:
e - ключ, который нужно добавить
Возвращает:
true если этот набор изменился в результате вызова
Выбрасывает:
NullPointerException - если указанный ключ равен null
UnsupportedOperationException - если значение по умолчанию для добавлений не было предоставлено

addAll

public boolean addAll(Collection<? extends K> c)

Добавляет все элементы из указанной коллекции в этот набор, как если бы вызывали add(K) для каждого из них.

Указано в:
addAll в интерфейсе Collection<K>
Указано в:
addAll в интерфейсе Set<K>
Параметры:
c - элементы, которые нужно вставить в этот набор
Возвращает:
true если этот набор изменился в результате вызова
Выбрасывает:
NullPointerException - если коллекция или любой из ее элементов являются null
UnsupportedOperationException - если значение по умолчанию для добавлений не было предоставлено
См. также:
Set.add(Object)

hashCode

public int hashCode()

Описание скопировано из класса: Object

Возвращает значение хэш-кода для объекта. Этот метод поддерживается для выгоды хэш-таблиц, таких как те, которые предоставляются HashMap.

Общий контракт hashCode:

  • Всякий раз, когда он вызывается на одном и том же объекте более одного раза во время выполнения Java-приложения, метод hashCode должен последовательно возвращать одно и то же целое число, при условии, что никакая информация, используемая в equals сравнениях объекта, не изменяется. Это целое число не обязательно должно оставаться постоянным от одного выполнения приложения к другому выполнению того же приложения.
  • Если два объекта равны в соответствии с методом equals(Object), то вызов метода hashCode для каждого из двух объектов должен дать один и тот же целочисленный результат.
  • Не требуется, чтобы если два объекта не равны в соответствии с методом Object.equals(java.lang.Object), то вызов метода hashCode для каждого из двух объектов должен давать различные целочисленные результаты. Однако программист должен понимать, что получение различных целочисленных результатов для неравных объектов может улучшить производительность хэш-таблиц.

Насколько это практически возможно, метод hashCode, определенный классом Object, возвращает различные целые числа для различных объектов. (Обычно это реализуется путем преобразования внутреннего адреса объекта в целое число, но эта методика реализации не требуется языком программирования Java™).

Указано в:
hashCode в интерфейсе Collection<K>
Указано в:
hashCode в интерфейсе Set<K>
Переопределяет:
hashCode в классе Object
Возвращает:
значение хэш-кода для этого объекта.
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

equals

public boolean equals(Object o)

Описание скопировано из класса: Object

Указывает, является ли какой-либо другой объект "равным" этому объекту.

Метод equals реализует отношение эквивалентности на не-null ссылках на объекты:

  • Он является рефлексивным: для любого не-null значения ссылки x, x.equals(x) должен возвращать true.
  • Он является симметричным: для любых не-null значений ссылок x и y, x.equals(y) должен возвращать true тогда и только тогда, когда y.equals(x) возвращает true.
  • Он является транзитивным: для любых не-null значений ссылок x, y, и z, если x.equals(y) возвращает true и y.equals(z) возвращает true, то x.equals(z) должен возвращать true.
  • Он является согласованным: для любых не-null значений ссылок x и y, многократные вызовы x.equals(y) последовательно возвращают true или последовательно возвращают false, при условии, что никакая информация, используемая в equals сравнениях объектов, не изменяется.
  • Для любого не-null значения ссылки x, x.equals(null) должен возвращать false.

Метод equals для класса Object реализует наиболее дискриминационное возможное отношение эквивалентности на объектах; то есть, для любых не-null значений ссылок x и y, этот метод возвращает true тогда и только тогда, когда x и y ссылаются на один и тот же объект (x == y имеет значение true).

Обратите внимание, что обычно необходимо переопределять метод hashCode всякий раз, когда этот метод переопределяется, чтобы поддерживать общий контракт для метода hashCode, который утверждает, что равные объекты должны иметь равные хэш-коды.

Указано в:
equals в интерфейсе Collection<K>
Указано в:
equals в интерфейсе Set<K>
Переопределяет:
equals в классе Object
Параметры:
o - объект-ссылка, с которым нужно сравнить.
Возвращает:
true если этот объект такой же, как аргумент obj; false в противном случае.
См. также:
Object.hashCode(), HashMap

spliterator

public Spliterator<K> spliterator()

Описание скопировано из интерфейса: Set

Создает Spliterator по элементам в этом наборе.

Spliterator сообщает Spliterator.DISTINCT. Реализации должны документировать отчет о дополнительных характеристических значениях.

Указано в:
spliterator в интерфейсе Iterable<K>
Указано в:
spliterator в интерфейсе Collection<K>
Указано в:
spliterator в интерфейсе Set<K>
Возвращает:
Spliterator по элементам в этом наборе

forEach

public void forEach(Consumer<? super K> action)

Описание скопировано из интерфейса: Iterable

Выполняет заданное действие для каждого элемента Iterable до тех пор, пока все элементы не будут обработаны или действие не выбросит исключение. Если не указано иначе реализующим классом, действия выполняются в порядке итерации (если порядок итерации указан). Исключение, выброшенное действием, передается вызывающему объекту.

Указано в:
forEach в интерфейсе Iterable<K>
Параметры:
action - действие, которое должно быть выполнено для каждого элемента

getMap

public ConcurrentHashMap<K,V> getMap()

Возвращает карту, лежащую в основе этого представления.

Возвращает:
карта, лежащая в основе этого представления

clear

public final void clear()

Удаляет все элементы из этого представления, удалив все отображения из карты, лежащей в основе этого представления.

Указано в:
clear в интерфейсе Collection<E>

size

public final int size()

Описание скопировано из интерфейса: Collection

Возвращает количество элементов в этом наборе. Если этот набор содержит более чем Integer.MAX_VALUE элементов, возвращает Integer.MAX_VALUE.

Определено в:
size в интерфейсе Collection<E>
Возвращает:
количество элементов в этом наборе

isEmpty

public final boolean isEmpty()

Описание скопировано из интерфейса: Collection

Возвращает true, если этот набор не содержит элементов.

Определено в:
isEmpty в интерфейсе Collection<E>
Возвращает:
true если этот набор не содержит элементов

toArray

public final Object[] toArray()

Описание скопировано из интерфейса: Collection

Возвращает массив, содержащий все элементы этого набора. Если этот набор гарантирует порядок возвращения элементов своим итератором, этот метод должен вернуть элементы в том же порядке.

Возвращаемый массив будет «безопасным» в том смысле, что к нему не сохраняются ссылки из этого набора. (Другими словами, этот метод должен выделить новый массив, даже если этот набор поддерживается массивом). Таким образом, вызывающая сторона свободна изменять возвращаемый массив.

Этот метод действует как мост между основанными на массивах и основанными на наборах API.

Определено в:
toArray в интерфейсе Collection<E>
Возвращает:
массив, содержащий все элементы этого набора

toArray

public final <T> T[] toArray(T[] a)

Описание скопировано из интерфейса: Collection

Возвращает массив, содержащий все элементы этого набора; тип времени выполнения возвращаемого массива — тип указанного массива. Если набор помещается в указанный массив, он возвращается в нём. В противном случае выделяется новый массив с типом времени выполнения указанного массива и размером этого набора.

Если этот набор помещается в указанный массив с избыточным местом (т.е. массив имеет больше элементов, чем этот набор), элемент в массиве сразу после конца набора устанавливается в null. (Это полезно для определения длины этого набора только если вызывающая сторона знает, что этот набор не содержит ни одного null элемента.)

Если этот набор гарантирует порядок возвращения элементов своим итератором, этот метод должен вернуть элементы в том же порядке.

Как и метод Collection.toArray(), этот метод действует как мост между основанными на массивах и основанными на наборах API. Кроме того, этот метод позволяет точно контролировать тип времени выполнения выходного массива и может в определенных обстоятельствах использоваться для экономии затрат на выделение памяти.

Предположим, что x — это набор, известный тем, что содержит только строки. Следующий код может использоваться для выгрузки набора в новый выделенный массив String:

String[] y = x.toArray(new String[0]);
Обратите внимание, что toArray(new Object[0]) идентичен по функции toArray().
Определено в:
toArray в интерфейсе Collection<E>
Параметры типа:
T - тип времени выполнения массива для хранения набора
Параметры:
a - массив, в который должны быть помещены элементы этого набора, если он достаточно велик; в противном случае для этой цели выделяется новый массив того же типа времени выполнения.
Возвращает:
массив, содержащий все элементы этого набора

toString

public final String toString()

Возвращает строковое представление этого набора. Строковое представление состоит из строковых представлений элементов набора в порядке, в котором они возвращаются его итератором, заключённых в квадратные скобки ("[]"). Смежные элементы разделяются символами ", " (запятая и пробел). Элементы преобразуются в строки по методу String.valueOf(Object).

Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого набора

containsAll

public final boolean containsAll(Collection<?> c)

Описание скопировано из интерфейса: Collection

Возвращает true , если этот набор содержит все элементы в указанном наборе.

Определено в:
containsAll в интерфейсе Collection<E>
Параметры:
c - набор, подлежащий проверке на включение в этот набор
Возвращает:
true если этот набор содержит все элементы в указанном наборе
См. также:
Collection.contains(Object)

removeAll

public final boolean removeAll(Collection<?> c)

Описание скопировано из интерфейса: Collection

Удаляет все элементы этого набора, которые также содержатся в указанном наборе (необязательная операция). После возврата этого вызова этот набор не будет содержать общих элементов с указанным набором.

Определено в:
removeAll в интерфейсе Collection<E>
Параметры:
c - набор, содержащий элементы, которые нужно удалить из этого набора
Возвращает:
true если этот набор изменился в результате вызова
См. также:
Collection.remove(Object), Collection.contains(Object)

retainAll

public final boolean retainAll(Collection<?> c)

Описание скопировано из интерфейса: Collection

Сохраняет только элементы в этом наборе, которые содержатся в указанном наборе (необязательная операция). Другими словами, удаляет из этого набора все его элементы, которые не содержатся в указанном наборе.

Определено в:
retainAll в интерфейсе Collection<E>
Параметры:
c - набор, содержащий элементы, которые нужно сохранить в этом наборе
Возвращает:
true если этот набор изменился в результате вызова
См. также:
Collection.remove(Object), Collection.contains(Object)

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API