Особенность scala.Product21
Компаньон объект Product21
особенность Product21[+T1, +T2, +T3, +T4, +T5, +T6, +T7, +T8, +T9, +T10, +T11, +T12, +T13, +T14, +T15, +T16, +T17, +T18, +T19, +T20, +T21] extends Product
Члены-значения абстрактного типа
abstract def _1: T1
Проекция элемента 1 этого Product.
- returns
Проекция элемента 1.
abstract def _10: T10
Проекция элемента 10 этого Product.
- returns
Проекция элемента 10.
abstract def _11: T11
Проекция элемента 11 этого Product.
- returns
Проекция элемента 11.
abstract def _12: T12
Проекция элемента 12 этого Product.
- returns
Проекция элемента 12.
abstract def _13: T13
Проекция элемента 13 этого Product.
- returns
Проекция элемента 13.
abstract def _14: T14
Проекция элемента 14 этого Product.
- returns
Проекция элемента 14.
abstract def _15: T15
Проекция элемента 15 этого Product.
- returns
Проекция элемента 15.
abstract def _16: T16
Проекция элемента 16 этого Product.
- returns
Проекция элемента 16.
abstract def _17: T17
Проекция элемента 17 этого Product.
- returns
Проекция элемента 17.
abstract def _18: T18
Проекция элемента 18 этого Product.
- returns
Проекция элемента 18.
abstract def _19: T19
Проекция элемента 19 этого Product.
- returns
Проекция элемента 19.
abstract def _2: T2
Проекция элемента 2 этого Product.
- returns
Проекция элемента 2.
abstract def _20: T20
Проекция элемента 20 этого Product.
- returns
Проекция элемента 20.
abstract def _21: T21
Проекция элемента 21 этого Product.
- returns
Проекция элемента 21.
abstract def _3: T3
Проекция элемента 3 этого Product.
- returns
Проекция элемента 3.
abstract def _4: T4
Проекция элемента 4 этого Product.
- returns
Проекция элемента 4.
abstract def _5: T5
Проекция элемента 5 этого Product.
- returns
Проекция элемента 5.
abstract def _6: T6
Проекция элемента 6 этого Product.
- returns
Проекция элемента 6.
abstract def _7: T7
Проекция элемента 7 этого Product.
- returns
Проекция элемента 7.
abstract def _8: T8
Проекция элемента 8 этого Product.
- returns
Проекция элемента 8.
abstract def _9: T9
Проекция элемента 9 этого Product.
- returns
Проекция элемента 9.
abstract def canEqual(that: Any): Boolean
Метод, который должен вызываться из каждого правильно разработанного метода equals, который открыт для переопределения в подклассе. См. Programming in Scala, Глава 28 для обсуждения и проектирования.
- that
Значение, которое проверяется на возможное равенство
- returns
true, если этот экземпляр может быть равен
that, иначе false
- Definition Classes
- Equals
abstract def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- возвращает
объект класса, соответствующий типу получателя во время выполнения.
- Определяющие классы
- Any
Члены-значения
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
trueесли !(this == that), иначе false.
- Определяющие классы
- Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для числовых типов возвращает значение хэша, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## будет генерировать одинаковое значение хэша для каждого из них. Для null возвращает хэш-код, где null.hashCode выбрасывает NullPointerException.
- возвращает
значение хэша, согласованное с ==
- Определяющие классы
- Any
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] в any2stringadd[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] выполненной методом any2stringadd в scala.Predef.
- Определяющие классы
- any2stringadd
def ->[B](y: B): (Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21], B)
- Неявный
- Этот член добавлен неявным преобразованием из Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] в ArrowAssoc[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] выполненной методом 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в противном случае.
- Определяющие классы
- Any
final def asInstanceOf[T0]: T0
Привести объект-получатель к типу T0.
Обратите внимание, что успешность приведения в ходе выполнения зависит от семантики стирания Scala. Следовательно, выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] — нет. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, соответствуют ли элементы списка требуемому типу.
- returns
объект-получатель.
- Definition Classes
- Any
- Исключения
ClassCastException, если объект-получатель не является экземпляром стираемой версии типаT0.
def ensuring(cond: (Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]) ⇒ Boolean, msg: ⇒ Any): Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
- Неявное
- Этот член добавлен благодаря неявной конверсии из Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] к Ensuring[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] выполненной методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]) ⇒ Boolean): Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
- Неявный
- Этот член добавлен с помощью неявного преобразования из Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] к Ensuring[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] методом Ensuring в scala.Predef.
- Классы определений
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
- Неявный
- Этот член добавлен с помощью неявного преобразования из Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] к Ensuring[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] методом Ensuring в scala.Predef.
- Классы определений
- Ensuring
def ensuring(cond: Boolean): Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]
- Неявный
- Этот член добавлен неявным преобразованием из Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] в Ensuring[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] методом Ensuring в scala.Predef.
- Классы-определения
- 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)).
- возвращает
true, если получаемый объект эквивалентен аргументу;falseв противном случае.
- Классы-определения
- Any
def formatted(fmtstr: String): String
Возвращает строку, отформатированную согласно заданной строке format. Строки формата аналогичны форматам String.format (@see java.lang.String.format).
- Неявный
- Этот член добавлен неявным преобразованием из Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] в StringFormat[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] методом StringFormat в scala.Predef.
- Классы-определения
- StringFormat
- Аннотации
- @inline()
def hashCode(): Int
Вычисляет хэш-код объекта.
Алгоритм хеширования по умолчанию зависит от платформы.
Обратите внимание, что допускается, что у двух объектов могут быть одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)) , но при этом они не обязательно равны (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true ), то у них должны быть одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода убедитесь, что поведение согласуется с методом equals.
- возвращает
значение хэш-кода для этого объекта.
- Классы-определения
- Any
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип получаемого объекта типом T0.
Обратите внимание, что результат проверки зависит от стирания типов в Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, в то время как выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, так как тип аргумента стирается во время компиляции, нельзя проверить, соответствуют ли элементы списка указанному типу.
- возвращает
true, если получаемый объект является экземпляром стираемого типаT0;falseв противном случае.
- Классы-определения
- Any
def productArity: Int
def productElement(n: Int): Any
Возвращает n-ую проекцию этого произведения, если 0 <= n < productArity, в противном случае выбрасывает IndexOutOfBoundsException.
- n
номер проекции, которая должна быть возвращена
- возвращает
то же, что и
._(n+1), например,productElement(0)то же, что и._1.
def productIterator: Iterator[Any]
Итератор по всем элементам этого произведения.
- возвращает
в реализации по умолчанию,
Iterator[Any]
- Классы-определения
- Product
def productPrefix: String
Строка, используемая в методах toString производных классов. Реализации могут переопределить этот метод, чтобы добавить префикс строки к результату методов toString.
- возвращает
в реализации по умолчанию, пустая строка
- Классы-определения
- Product
def toString(): String
Возвращает строковое представление объекта.
Представление по умолчанию зависит от платформы.
- возвращает
строковое представление объекта.
- Классы-определения
- Any
def →[B](y: B): (Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21], B)
- Неявный
- Этот член добавлен неявным преобразованием из Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21] к ArrowAssoc[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] выполненным методом 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/Product21.html
Product21 — это декартово произведение из 21 компоненты.
2.3