Spec-Zone .ru
спецификации, руководства, описания, API
|
E
- тип элементов сохраняется этим наборомpublic abstract class AbstractSet<E> extends AbstractCollection<E> implements Set<E>
Процесс реализации набора, расширяя этот класс идентичен той из реализации Набора, расширяя AbstractCollection, за исключением того, что все методы и конструкторы в подклассах этого класса должны повиноваться дополнительным ограничениям, наложенным интерфейсом Set (например, добавить метод не должен разрешить добавление многократных экземпляров объекта к набору).
Отметьте, что этот класс не переопределяет ни одной из реализаций от класса AbstractCollection. Это просто добавляет реализации для equals и hashCode.
Этот класс является элементом Платформы Наборов Java.
Collection
, AbstractCollection
, Set
Модификатор | Конструктор и Описание |
---|---|
protected |
AbstractSet()
Единственный конструктор.
|
Модификатор и Тип | Метод и Описание |
---|---|
boolean |
equals(Object o)
Сравнивает указанный объект с этим набором для равенства.
|
int |
hashCode()
Возвращает значение хэш-кода для этого набора.
|
boolean |
removeAll(Collection<?> c)
Удаляет из этого набора все его элементы, которые содержатся в указанном наборе (дополнительная работа).
|
add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, retainAll, size, toArray, toArray, toString
protected AbstractSet()
public boolean equals(Object o)
Эта реализация сначала проверяет, является ли указанный объект этим набором; раз так это возвращает true. Затем, это проверяет, является ли указанный объект набором, размер которого идентичен размеру этого набора; в противном случае это возвращает false. Если так, это возвращает containsAll((Collection) o).
equals
в интерфейсе Collection<E>
equals
в интерфейсе Set<E>
equals
в классе Object
o
- объект, который будет сравнен для равенства с этим наборомObject.hashCode()
, HashMap
public int hashCode()
Object.hashCode()
. Эта реализация выполняет итерации по набору, вызывая метод hashCode на каждом элементе в наборе, и сложение результатов.
hashCode
в интерфейсе Collection<E>
hashCode
в интерфейсе Set<E>
hashCode
в классе Object
Object.equals(Object)
, Set.equals(Object)
public boolean removeAll(Collection<?> c)
Эта реализация определяет, который является меньшим из этого набора и указанного набора, вызывая метод size на каждого. Если у этого набора есть меньше элементов, то реализация выполняет итерации по этому набору, проверяя каждый элемент, возвращенный iterator поочередно, чтобы видеть, содержится ли это в указанном наборе. Если это столь содержится, это удаляется из этого набора с методом remove iterator. Если у указанного набора есть меньше элементов, то реализация выполняет итерации по указанному набору, удаляющему из этого набора каждый элемент, возвращенный iterator, используя метод remove этого набора.
Отметьте, что эта реализация бросит UnsupportedOperationException, если iterator, возвращенный методом iterator, не реализует метод remove.
removeAll
в интерфейсе Collection<E>
removeAll
в интерфейсе Set<E>
removeAll
в классе AbstractCollection<E>
c
- набор, содержащий элементы, которые будут удалены из этого набораUnsupportedOperationException
- если работа removeAll не поддерживается этим наборомClassCastException
- если класс элемента этого набора является несовместимым с указанным (дополнительным) наборомNullPointerException
- если этот набор содержит нулевой элемент, и указанный набор не разрешает нулевые (дополнительные) элементы, или если указанный набор является нулемAbstractCollection.remove(Object)
, AbstractCollection.contains(Object)
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.