Объект scala.collection.immutable.HashSet
Компонент класс HashSet
объект HashSet extends ImmutableSetFactory[HashSet] with Serializable
Типовые члены
тип Coll = HashSet[_]
Базовый тип коллекции с неизвестным типом элементов
- Атрибуты
- protected[this]
- Определяющие классы
- GenericCompanion
класс HashSet1[A] extends LeafHashSet[A]
класс HashTrieSet[A] extends HashSet[A]
Узел ветвления HashTrieSet с по крайней мере одним и не более 32 дочерними узлами.
- A
тип элементов, содержащихся в этом множестве. Как работают уровни: При поиске или добавлении элементов часть хэш-кода, используемая для адресации массива дочерних элементов, зависит от того, на какой глубине мы находимся в дереве. Это достигается с помощью параметра уровня во всех внутренних методах, который начинается с 0 и увеличивается на 5 (32 = 25) каждый раз, когда мы углубляемся в дерево. хэш-код (двоичный): 00000000000000000000000000000000 уровень=0 (глубина=0) уровень=5 (глубина=1) уровень=10 (глубина=2) ^^^^ ... Будьте осторожны: некорневой HashTrieSet не является автономным множеством, поэтому, например, вызов contains на нем не сработает! Он полагается на свою глубину в Trie для использования части хэша для адресации дочерних элементов, но эта информация (уровень) не хранится из-за соображений эффективности хранения, но должна передаваться явно! Как bitmap и elems соотносятся: Примитивное реализация HashTrieSet всегда имела бы массив размером 32 для дочерних элементов и оставляла бы неиспользуемые дочерние элементы пустыми (null). Но это было бы очень неэффективно с точки зрения памяти. Вместо этого, в elems хранятся только непустые дочерние элементы, а bitmap используется для кодирования соответствия между elem и дочерними корзинами. Самый младший бит соответствует первому элементу, второй - второму и т.д. bitmap (двоичный): 00010000000000000000100000000000 elems: [a,b] children: ---b----------------a-----------
Члены-значения
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- returns
trueесли !(this == that), в противном случае false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает хэш-значение, соответствующее равенству значений: если два экземпляра типа значения сравниваются как true, то ## возвращает одинаковое хэш-значение для каждого из них. Для null возвращает хэш-код, где null.hashCode выбрасывает NullPointerException.
- returns
хэш-значение, согласованное с ==
- Definition Classes
- AnyRef → Any
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def apply[A](elems: A*): HashSet[A]
Создаёт коллекцию с указанными элементами.
- A
тип элементов коллекции
- elems
элементы создаваемой коллекции
- returns
новая коллекция с элементами
elems
- Definition Classes
- GenericCompanion
final def asInstanceOf[T0]: T0
Приводит объект-получатель к типу T0.
Обратите внимание, что успех приведения в ходе выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] выбросит ClassCastException в ходе выполнения, тогда как выражение List(1).asInstanceOf[List[String]] не выбросит. В последнем примере, поскольку аргумент типа стирается на этапе компиляции, невозможно проверить, относятся ли элементы списка к требуемому типу.
- returns
объект-получатель.
- Definition Classes
- Any
- Исключения
ClassCastExceptionесли объект-получатель не является экземпляром стирания типаT0.
implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, HashSet[A]]
def clone(): AnyRef
Создаёт копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия объекта-получателя.
def empty[A]: HashSet[A]
Пустая коллекция типа Set[A]
- A
тип элементов множества
- Definition Classes
- ImmutableSetFactory → GenericCompanion
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на не-нулевых экземплярах AnyRef, и имеет три дополнительных свойства:
-
Он согласован: для любых не-нулевых экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-нулевого экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true. При переопределении методов equals или hashCode важно обеспечить соответствие их поведения равенству ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2 ), они должны быть равны друг другу (o1 == o2 ) и должны иметь одинаковое хэш-значение (o1.hashCode == o2.hashCode).
- returns
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def equals(arg0: Any): Boolean
Метод равенства для ссылочных типов. По умолчанию делегирует вызов eq.
См. также equals в scala.Any.
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда на объект больше нет ссылок.
Подробности о том, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями зависят от платформы.
- Атрибуты
- protected[lang]
- Определяющие классы
- AnyRef
- Аннотации
- @throws( classOf[java.lang.Throwable] )
- Примечание
не определен SLS как член AnyRef
final def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- возвращает
объект класса, соответствующий типу получателя во время выполнения.
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- возвращает
значение хеш-кода для этого объекта.
final def isInstanceOf[T0]: Boolean
Проверка, является ли динамический тип объекта-получателя T0.
Обратите внимание, что результат теста зависит от семантики стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, относятся ли содержимое списка к указанному типу.
- возвращает
true, если объект-получатель является экземпляром стирания типаT0;falseв противном случае.
- Определяющие классы
- Any
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
true, если аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Определяющие классы
- AnyRef
def newBuilder[A]: Builder[A, HashSet[A]]
По умолчанию, билдер для объектов . Set
- A
тип элементов набора
- Определяющие классы
- ImmutableSetFactory → GenSetFactory → GenericCompanion
final def notify(): Unit
Разбуживает единственную нить, которая ожидает монитор объекта-получателя.
- Определяющие классы
- AnyRef
- Аннотации
- @native()
- Примечание
не определен SLS как член AnyRef
final def notifyAll(): Unit
Разбуживает все нити, которые ожидают монитор объекта-получателя.
- Определяющие классы
- AnyRef
- Аннотации
- @native()
- Примечание
не определен SLS как член AnyRef
def setCanBuildFrom[A]: CanBuildFrom[HashSet[_], A, HashSet[A]]
Стандартный экземпляр CanBuildFrom для объектов . Set
- Определяющие классы
- GenSetFactory
final def synchronized[T0](arg0: ⇒ T0): T0
- Определяющие классы
- AnyRef
def toString(): String
Создает строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, «@» и хеш-кода объекта в шестнадцатеричном формате.
- возвращает
строковое представление объекта.
- Определяющие классы
- AnyRef → Any
final def wait(): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @throws( ... )
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/immutable/HashSet$.html
Этот объект предоставляет набор операций, необходимых для создания значений
.immutable.HashSet