Spec-Zone.ru › Scala 3.1

Класс scala.Tuple3

Исходный код

final case class Tuple3[+T1, +T2, +T3](_1: T1, _2: T2, _3: T3) extends Product3[T1, T2, T3]

Кортеж из 3 элементов; каноническое представление scala.Product3.

Параметры значения
_1

Элемент 1 этого Tuple3

_2

Элемент 2 этого Tuple3

_3

Элемент 3 этого Tuple3

Конструктор

Создает новый кортеж из 3 элементов. Обратите внимание, что более идиоматично создавать Tuple3 с помощью (t1, t2, t3)

Надтипы
интерфейс Serializable
интерфейс Product3[T1, T2, T3]
класс T1 *: T2 *: T3 *: EmptyTuple.type
интерфейс NonEmptyTuple
интерфейс Tuple
интерфейс Product
интерфейс Equals
класс Object
интерфейс Matchable
класс Any

Конкретные методы

Исходный код
override def toString(): String

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

Наследованные методы

Исходный код
inline def *:[H, This >: (T1, T2, T3) <: Tuple](x: H): H *: This

Возвращает новый кортеж, добавив элемент в this кортеж. Эта операция имеет сложность O(this.size)

Наследованный от Tuple

Исходный код
inline def ++[This >: (T1, T2, T3) <: Tuple](that: Tuple): Concat[This, that.type]

Возвращает новый кортеж, конкатенировав this кортеж с that кортежем. Эта операция имеет сложность O(this.size + that.size)

Наследованный от Tuple

Исходный код@experimental
inline def :*[This >: (T1, T2, T3) <: Tuple, L](x: L): Append[This, L]

Возвращает копию this кортежа с добавленным элементом.

Наследованный от Tuple

Исходный код
inline def apply[This >: (T1, T2, T3) <: NonEmptyTuple](n: Int): Elem[This, n.type]

Получает i-й элемент этого кортежа. Эквивалентно productElement, но с точным типом возвращаемого значения.

Наследованный от NonEmptyTuple

Исходный код
inline def drop[This >: (T1, T2, T3) <: Tuple](n: Int): Drop[This, n.type]

Для данного кортежа (a1, ..., am), возвращает кортеж (an+1, ..., am), содержащий все элементы, кроме первых n.

Наследованный от Tuple

Исходный код
inline def head[This >: (T1, T2, T3) <: NonEmptyTuple]: Head[This]

Получает голову этого кортежа

Наследованный от NonEmptyTuple

Source@experimental
inline def init[This >: (T1, T2, T3) <: NonEmptyTuple]: Init[This]

Получить начальную часть кортежа без его последнего элемента

Унаследовано от NonEmptyTuple

Source@experimental
inline def last[This >: (T1, T2, T3) <: NonEmptyTuple]: Last[This]

Получить последний элемент этого кортежа

Унаследовано от NonEmptyTuple

Source
inline def map[F[_]](f: [t] => (x$1: t) => F[t]): Map[(T1, T2, T3), F]

Вызывается на кортеж (a1, ..., an), возвращает новый кортеж (f(a1), ..., f(an)). Результат типизируется как (F[A1], ..., F[An]) если тип кортежа полностью известен. Если кортеж имеет вид a1 *: ... *: Tuple (т.е. хвост не известен как тип конс).

Унаследовано от Tuple

Source
override def productArity: Int

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

Возвращает

3

Классы определения Product3 -> Product
Унаследовано от Product3

Source@throws(scala.Predef.classOf[scala.IndexOutOfBoundsException])
override def productElement(n: Int): Any

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

Параметры значения
n

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

Возвращает

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

Выбрасывает
IndexOutOfBoundsException

если номер n вне диапазона (n < 0 || n >= 3).

Классы определения Product3 -> Product
Унаследовано от Product3

Source
def productElementNames: Iterator[String]

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

Унаследовано от Product

Source
def productIterator: Iterator[Any]

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

Возвращает

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

Унаследовано от Product

Source
inline def size[This >: (T1, T2, T3) <: Tuple]: Size[This]

Возвращает размер (или арность) кортежа

Унаследовано от Tuple

Source
inline def splitAt[This >: (T1, T2, T3) <: Tuple](n: Int): (This, n.type)

Для данного кортежа (a1, ..., am), возвращает пару кортежей (a1, ..., an) состоящий из первых n элементов, и кортеж (an+1, ..., am) состоящий из оставшихся элементов.

Унаследовано от Tuple

Исходный код
inline def tail[This >: (T1, T2, T3) <: NonEmptyTuple]: Tail[This]

Получить хвост этой кортежи. Эта операция имеет сложность O(this.size)

Унаследовано от NonEmptyTuple

Исходный код
inline def take[This >: (T1, T2, T3) <: Tuple](n: Int): Take[This, n.type]

Для заданной кортежи (a1, ..., am), возвращает кортежу (a1, ..., an) состоящую из её первых n элементов.

Унаследовано от Tuple

Исходный код
inline def toArray: Array[Object]

Создать копию этой кортежи в виде массива

Унаследовано от Tuple

Исходный код
inline def toIArray: IArray[Object]

Создать копию этой кортежи в виде IArray

Унаследовано от Tuple

Исходный код
inline def toList: List[Union[(T1, T2, T3)]]

Создать копию этой кортежи в виде списка

Унаследовано от Tuple

Исходный код
inline def zip[This >: (T1, T2, T3) <: Tuple, T2 <: Tuple](t2: T2): Zip[This, T2]

Для двух кортежей, (a1, ..., an) и (a1, ..., an), возвращает кортежу ((a1, b1), ..., (an, bn)). Если у кортежей разная длина, лишние элементы большей кортежи будут проигнорированы. Результат типизирован как ((A1, B1), ..., (An, Bn)) если хотя бы у одного из типов кортежи есть EmptyTuple хвост. Иначе тип результата — (A1, B1) *: ... *: (Ai, Bi) *: Tuple

Унаследовано от Tuple

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/Tuple3.html

Spec-Zone.ru

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