Трейт scala.Product2
Компонент объект Product2
трейт Product2[+T1, +T2] extends Product
Абстрактные члены-значения
абстрактный def _1: T1
Проекция элемента 1 этого Product.
- возвращает
Проекцию элемента 1.
абстрактный def _2: T2
Проекция элемента 2 этого Product.
- возвращает
Проекцию элемента 2.
абстрактный def canEqual(that: Any): Boolean
Метод, который должен вызываться из каждого хорошо спроектированного метода equals, который может быть переопределён в подклассе. См. Programming in Scala, Глава 28 для обсуждения и проектирования.
- that
Значение, проверяемое на возможную эквивалентность
- возвращает
true, если эта инстанция может быть равна
that, иначе false
- Определения классов
- Equals
абстрактный def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- возвращает
объект класса, соответствующий типу во время выполнения получателя.
- Определения классов
- Any
Члены конкретных значений
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
trueесли !(this == that), иначе false.
- Definition Classes
- Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает значение хэша, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## вернет одинаковое значение хэша для каждого из них. Для null возвращает хэш-код, где null.hashCode вызывает NullPointerException.
- возвращает
значение хэша, согласованное с ==
- Definition Classes
- Any
def +(other: String): String
- Неявный
- Этот член добавляется неявным преобразованием из Product2[T1, T2] в any2stringadd[Product2[T1, T2]] выполненным методом any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
def ->[B](y: B): (Product2[T1, T2], B)
- Неявный
- Этот член добавляется неявным преобразованием из Product2[T1, T2] в ArrowAssoc[Product2[T1, T2]] выполненным методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Аннотации
- @inline()
final def ==(arg0: Any): Boolean
Проверка двух объектов на равенство. Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- Any
final def asInstanceOf[T0]: T0
Приведение типа объекта-получателя к типу T0.
Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания в Scala. Поэтому выражение 1.asInstanceOf[String] вызовет ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] - нет. В последнем примере из-за того, что аргумент типа стирается во время компиляции, невозможно проверить, относятся ли элементы списка к нужному типу.
- возвращает
объект-получатель.
- Definition Classes
- Any
- Исключения
ClassCastException, если объект-получатель не является экземпляром стирания типаT0.
def ensuring(cond: (Product2[T1, T2]) ⇒ Boolean, msg: ⇒ Any): Product2[T1, T2]
- Неявный
- Этот член добавляется неявным преобразованием из Product2[T1, T2] в Ensuring[Product2[T1, T2]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (Product2[T1, T2]) ⇒ Boolean): Product2[T1, T2]
- Неявный
- Этот член добавляется неявным преобразованием из Product2[T1, T2] в Ensuring[Product2[T1, T2]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Product2[T1, T2]
- Неявный
- Этот член добавляется неявным преобразованием из Product2[T1, T2] в Ensuring[Product2[T1, T2]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): Product2[T1, T2]
- Implicit
- Этот член добавлен неявным преобразованием из Product2[T1, T2] в Ensuring[Product2[T1, T2]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def equals(arg0: Any): Boolean
Сравнивает получаемый объект (this) с объектом-аргументом (that) для проверки эквивалентности.
Любое реализация этого метода должна быть отношением эквивалентности:
-
Он является рефлексивным: для любого экземпляра
x типа Any, x.equals(x) должен возвращать true.Он является симметричным: для любых экземпляров x и y типа Any, x.equals(y) должен возвращать true тогда и только тогда, когда y.equals(x) возвращает true.Он является транзитивным: для любых экземпляров x, y, и z типа Any, если x.equals(y) возвращает true и y.equals(z) возвращает true, то x.equals(z) должен возвращать true. При переопределении этого метода необходимо проверить, что ваша реализация остается отношением эквивалентности. Кроме того, при переопределении этого метода обычно необходимо переопределить hashCode, чтобы гарантировать, что объекты, которые являются "равными" (o1.equals(o2) возвращает true), хешируются в один и тот же scala.Int. (o1.hashCode.equals(o2.hashCode)).
- returns
true, если получаемый объект эквивалентен аргументу;falseв противном случае.
- Definition Classes
- Any
def formatted(fmtstr: String): String
Возвращает строку, отформатированную согласно заданной строке format. Форматные строки аналогичны тем, что используются в String.format (@см. java.lang.String.format).
- Implicit
- Этот член добавлен неявным преобразованием из Product2[T1, T2] в StringFormat[Product2[T1, T2]] с помощью метода StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
def hashCode(): Int
Вычисляет значение хэш-кода для объекта.
У алгоритма хеширования по умолчанию зависимость от платформы.
Обратите внимание, что для двух объектов могут быть идентичны хэш-коды (o1.hashCode.equals(o2.hashCode)) при этом они могут не быть равны (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако, требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true). то у них должны быть идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода убедитесь, что поведение согласуется с методом equals.
- returns
значение хэш-кода для этого объекта.
- Definition Classes
- Any
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип получаемого объекта T0.
Обратите внимание, что результат проверки зависит от семантики стирания Scala. Следовательно, выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, так как тип аргумента стирается во время компиляции, проверить, соответствуют ли содержимое списка указанному типу, невозможно.
- returns
trueесли получаемый объект является экземпляром стирания типаT0;falseв противном случае.
- Definition Classes
- Any
def productArity: Int
def productElement(n: Int): Any
Возвращает n-ую проекцию этого произведения, если 0 <= n < productArity, в противном случае выбрасывает IndexOutOfBoundsException.
- n
номер проекции, которая должна быть возвращена
- returns
то же, что и
._(n+1), например,productElement(0)эквивалентно._1.
def productIterator: Iterator[Any]
Итератор по всем элементам этого произведения.
- returns
в реализации по умолчанию,
Iterator[Any]
- Definition Classes
- Product
def productPrefix: String
Строка, используемая в методах toString производных классов. Реализации могут переопределить этот метод, чтобы добавить префикс строки к результату методов toString.
- returns
в реализации по умолчанию, пустая строка
- Definition Classes
- Product
def toString(): String
Возвращает строковое представление объекта.
По умолчанию представление зависит от платформы.
- возвращает
строковое представление объекта.
- Определяющие классы
- Any
def →[B](y: B): (Product2[T1, T2], B)
- Неявный
- Этот член добавлен неявным преобразованием из Product2[T1, T2] в ArrowAssoc[Product2[T1, T2]] с помощью метода ArrowAssoc в scala.Predef.
- Определяющие классы
- 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/Product2.html
Product2 — это декартово произведение из 2 компонентов.
2.3