Spec-Zone.ru › Scala 2.12 Library

Трейт scala.Product1

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

трейт Product1[+T1] extends Product

Product1 — это декартово произведение из 1 компонента.

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

2.3

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

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

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

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

возвращает

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

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

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

that

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

возвращает

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

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

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

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

возвращает

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

Определяющие классы
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

Неявный
Этот член добавлен неявным преобразованием из Product1[T1] в any2stringadd[Product1[T1]], выполненным методом any2stringadd в scala.Predef.
Definition Classes
any2stringadd

def ->[B](y: B): (Product1[T1], B)

Неявный
Этот член добавлен неявным преобразованием из Product1[T1] в ArrowAssoc[Product1[T1]], выполненным методом 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).

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
Исключения

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

def ensuring(cond: (Product1[T1]) ⇒ Boolean, msg: ⇒ Any): Product1[T1]

Неявный
Этот член добавлен неявным преобразованием из Product1[T1] в Ensuring[Product1[T1]], выполненным методом Ensuring в scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: (Product1[T1]) ⇒ Boolean): Product1[T1]

Неявный
Этот член добавлен неявным преобразованием из Product1[T1] в Ensuring[Product1[T1]], выполненным методом Ensuring в scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: Boolean, msg: ⇒ Any): Product1[T1]

Неявный
Этот член добавлен неявным преобразованием из Product1[T1] в Ensuring[Product1[T1]], выполненным методом Ensuring в scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: Boolean): Product1[T1]

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

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

Арность этого продукта.

возвращает

1

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

def productElement(n: Int): Any

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

n

номер проектирования, которое нужно вернуть

возвращает

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

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

def productIterator: Iterator[Any]

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

возвращает

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

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

def productPrefix: String

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

возвращает

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

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

def toString(): String

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

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

возвращает

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

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

def →[B](y: B): (Product1[T1], B)

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

Spec-Zone.ru

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