Spec-Zone.ru › Scala 2.12 Library

Трейт scala.Product3

Компаньон объект Product3

трейт Product3[+T1, +T2, +T3] extends Product

Product3 представляет собой декартово произведение 3 компонентов.

Источник
Product3.scala
С

2.3

Линейные надтипы
Известные подклассы

Абстрактные члены-значения

абстрактный def _1: T1

Проекция элемента 1 этого произведения.

возвращает

Проекцию элемента 1.

абстрактный def _2: T2

Проекция элемента 2 этого произведения.

возвращает

Проекцию элемента 2.

абстрактный def _3: T3

Проекция элемента 3 этого произведения.

возвращает

Проекцию элемента 3.

абстрактный 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.

Определяющие классы
Any

final def ##(): Int

Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает значение хэша, согласованное с равенством значений: если две инстанции типа значения сравниваются как true, то ## вернёт одно и то же значение хэша для каждой из них. Для null возвращает хэш-код, где null.hashCode вызывает NullPointerException.

возвращает

значение хэша, согласованное с ==

Определяющие классы
Any

def +(other: String): String

Неявный
Этот член добавлен благодаря неявной конверсии из Product3[T1, T2, T3] в any2stringadd[Product3[T1, T2, T3]] с помощью метода any2stringadd в scala.Predef.
Определяющие классы
any2stringadd

def ->[B](y: B): (Product3[T1, T2, T3], B)

Неявный
Этот член добавлен благодаря неявной конверсии из Product3[T1, T2, T3] в ArrowAssoc[Product3[T1, T2, T3]] с помощью метода 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]] — нет. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, соответствуют ли содержимое списка требуемому типу.

возвращает

объект-получатель.

Определяющие классы
Any
Исключения

ClassCastException, если объект-получатель не является экземпляром стираемого типа T0.

def ensuring(cond: (Product3[T1, T2, T3]) ⇒ Boolean, msg: ⇒ Any): Product3[T1, T2, T3]

Неявный
Этот член добавлен благодаря неявной конверсии из Product3[T1, T2, T3] в Ensuring[Product3[T1, T2, T3]] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: (Product3[T1, T2, T3]) ⇒ Boolean): Product3[T1, T2, T3]

Неявный
Этот член добавлен благодаря неявной конверсии из Product3[T1, T2, T3] в Ensuring[Product3[T1, T2, T3]] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean, msg: ⇒ Any): Product3[T1, T2, T3]

Неявный
Этот член добавлен неявным преобразованием из Product3[T1, T2, T3] в Ensuring[Product3[T1, T2, T3]] с помощью метода Ensuring в scala.Predef.
Классы определений
Ensuring

def ensuring(cond: Boolean): Product3[T1, T2, T3]

Неявный
Этот член добавлен неявным преобразованием из Product3[T1, T2, T3] в Ensuring[Product3[T1, T2, T3]] с помощью метода 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).

Неявный
Этот член добавлен неявным преобразованием из Product3[T1, T2, T3] в StringFormat[Product3[T1, T2, T3]] с помощью метода 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

Арность этого произведения.

возвращает

3

Классы определений
Product3 → Product

def productElement(n: Int): Any

Возвращает n-ую проекцию этого произведения, если 0 <= n < productArity, в противном случае выбрасывает IndexOutOfBoundsException.

n

номер проекции, которая должна быть возвращена

возвращает

то же, что и ._(n+1), например, productElement(0) такое же, как ._1.

Классы определений
Product3 → Product
Аннотации
@throws( clazz = classOf[IndexOutOfBoundsException] )
Исключения

def productIterator: Iterator[Any]

Итератор по всем элементам этого произведения.

возвращает

в реализации по умолчанию, Iterator[Any]

Классы определений
Product

def productPrefix: String

Строка, используемая в методах toString производных классов. Реализации могут переопределять этот метод, чтобы добавить строковый префикс к результату методов toString.

returns

в реализации по умолчанию — пустая строка

Definition Classes
Product

def toString(): String

Возвращает строковое представление объекта.

По умолчанию представление зависит от платформы.

returns

строковое представление объекта.

Definition Classes
Any

def →[B](y: B): (Product3[T1, T2, T3], B)

Неявный
Этот член добавлен неявным преобразованием из Product3[T1, T2, T3] в ArrowAssoc[Product3[T1, T2, T3]] с помощью метода 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/Product3.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API