Spec-Zone.ru › Scala 2.13 Library

Трейт scala.Product3

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

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

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

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

2.3

Линейные надтипы
Product, Equals, Any
Известные подклассы
Tuple3

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

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

Проекция элемента 1 этого Product.

возвращает

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

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

Проекция элемента 2 этого Product.

возвращает

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

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

Проекция элемента 3 этого Product.

возвращает

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

абстрактный def canEqual(that: Any): Boolean

Метод, который должен вызываться из каждого хорошо спроектированного метода equals, который может быть переопределен в подклассе. См. Programming in Scala, Chapter 28 для обсуждения и проектирования.

that

значение, проверяемое на возможное равенство

возвращает

true, если этот экземпляр потенциально может быть равен that, иначе false

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

абстрактный def getClass(): Class[_ <: AnyRef]

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

возвращает

объект класса, соответствующий типу получателя во время выполнения.

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

Члены конкретных значений

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

returns

true если !(this == that), иначе false.

Definition Classes
Any

final def ##(): Int

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

returns

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

Definition Classes
Any

def +(other: String): String

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

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

Implicit
Этот член добавлен неявным преобразованием из Product3[T1, T2, T3] вArrowAssoc[Product3[T1, T2, T3]] с помощью метода ArrowAssoc в scala.Predef.
Definition Classes
ArrowAssoc
Annotations
@inline()

final def ==(arg0: Any): Boolean

Проверка двух объектов на равенство. Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

returns

true если объект-получатель эквивалентен аргументу; false в противном случае.

Definition Classes
Any

final def asInstanceOf[T0]: T0

Приведение объекта-получателя к типу T0.

Обратите внимание, что успех приведения во время выполнения зависит от семантики стирания Scala. Таким образом, выражение 1.asInstanceOf[String] вызовет ClassCastException во время выполнения, тогда как выражение List(1).asInstanceOf[List[String]] — нет. В последнем примере, поскольку тип аргумента стирается в процессе компиляции, невозможно проверить, содержат ли элементы списка требуемый тип.

returns

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

Definition Classes
Any
Exceptions thrown

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

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

Implicit
Этот член добавлен неявным преобразованием из Product3[T1, T2, T3] вEnsuring[Product3[T1, T2, T3]] с помощью метода Ensuring в scala.Predef.
Definition Classes
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 (@см. 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(classOf[IndexOutOfBoundsException])
Исключения

IndexOutOfBoundsException, если n выходит за пределы диапазона (n < 0 || n >= 3).

def productElementName(n: Int): String

Имя n-го элемента этого продукта, нумерация с 0. В реализации по умолчанию - пустая строка.

n

индекс имени элемента, который нужно вернуть

возвращает

имя указанного элемента

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

IndexOutOfBoundsException, если n выходит за пределы диапазона (n < 0 || n >= productArity).

def productElementNames: Iterator[String]

Итератор по именам всех элементов этого продукта.

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

def productIterator: Iterator[Any]

Итератор по всем элементам этого продукта.

возвращает

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

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

def productPrefix: String

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

возвращает

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

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

def toString(): String

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

В зависимости от платформы.

возвращает

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

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

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/Product3.html

Spec-Zone.ru

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