Трейт scala.util.hashing.Hashing
Компаньон объект Hashing
трейт Hashing[T] extends Serializable
Абстрактные члены-значения
абстрактный def hash(x: T): Int
Члены-значения конкретных типов
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
trueесли !(this == that), иначе false.
- Определяющие классы
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для числовых типов возвращает хэш-значение, соответствующее равенству значений: если два экземпляра типа значения сравниваются как true, то ## для каждого из них вернёт одно и то же хэш-значение. Для null возвращает хэш-код, где null.hashCode генерирует NullPointerException.
- возвращает
хэш-значение, соответствующее ==
- Определяющие классы
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из Hashing[T] в any2stringadd[Hashing[T]] с помощью метода any2stringadd в scala.Predef.
- Определяющие классы
- any2stringadd
def ->[B](y: B): (Hashing[T], B)
- Неявный
- Этот член добавлен неявным преобразованием из Hashing[T] в ArrowAssoc[Hashing[T]] с помощью метода ArrowAssoc в scala.Predef.
- Определяющие классы
- ArrowAssoc
- Аннотации
- @inline()
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Определяющие классы
- AnyRef → Any
final def asInstanceOf[T0]: T0
Приведение объекта-получателя к типу T0.
Обратите внимание, что успех приведения в ходе выполнения зависит от семантики стирания Scala. Следовательно, выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] нет. В последнем примере, так как тип аргумента стирается во время компиляции, невозможно проверить, соответствуют ли содержимое списка запрошенному типу.
- возвращает
объект-получатель.
- Определяющие классы
- Any
- Исключения
ClassCastExceptionесли объект-получатель не является экземпляром стираемого типаT0.
def clone(): AnyRef
Создаёт копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- возвращает
копию объекта-получателя.
def ensuring(cond: (Hashing[T]) ⇒ Boolean, msg: ⇒ Any): Hashing[T]
- Неявный
- Этот член добавлен неявным преобразованием из Hashing[T] в Ensuring[Hashing[T]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: (Hashing[T]) ⇒ Boolean): Hashing[T]
- Неявный
- Этот член добавлен неявным преобразованием из Hashing[T] в Ensuring[Hashing[T]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Hashing[T]
- Неявный
- Этот член добавлен неявным преобразованием из Hashing[T] в Ensuring[Hashing[T]] с помощью метода Ensuring в scala.Predef.
- Классы-определения
- Ensuring
def ensuring(cond: Boolean): Hashing[T]
- Неявный
- Этот член добавлен неявным преобразованием из Hashing[T] в Ensuring[Hashing[T]] с помощью метода Ensuring в scala.Predef.
- Классы-определения
- Ensuring
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).
- возвращает
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Классы-определения
- AnyRef
def equals(arg0: Any): Boolean
Метод равенства для ссылочных типов. По умолчанию делегирует метод eq.
См. также equals в scala.Any.
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Классы-определения
- AnyRef → Any
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.
Подробности о том, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
- Атрибуты
- protected[lang]
- Классы-определения
- AnyRef
- Аннотации
- @throws( classOf[java.lang.Throwable] )
- Примечание
не задано SLS как член AnyRef
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с данной строкой format. Форматные строки такие же, как для String.format (@см java.lang.String.format).
- Неявный
- Этот член добавлен неявным преобразованием из Hashing[T] в StringFormat[Hashing[T]] с помощью метода StringFormat в scala.Predef.
- Классы-определения
- StringFormat
- Аннотации
- @inline()
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
final def notify(): Unit
Разбуждает единственную нить, ждущую монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Примечание
не указано SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все нити, ожидающие монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Примечание
не указано SLS как член AnyRef
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
def toString(): String
Создает строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, «@» и хэш-кода объекта в шестнадцатеричном формате.
- возвращает
строковое представление объекта.
- Definition Classes
- AnyRef → Any
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
def →[B](y: B): (Hashing[T], B)
- Неявный
- Этот член добавлен неявным преобразованием из Hashing[T] в ArrowAssoc[Hashing[T]] выполняемое методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
© 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/util/hashing/Hashing.html
Hashing— это трейт, экземпляры которого представляют стратегию хэширования для экземпляров типа.Компаньон-объект
Hashingопределяет стандартную стратегию хэширования для всех объектов — он вызывает их метод##.Примечание: при использовании пользовательской
Hashing, необходимо использовать её сEquiv, чтобы при равенстве двух объектов, их хэш-коды также были равны.2.10