Трейт scala.collection.generic.TraversableForwarder
трейт TraversableForwarder[+A] extends Traversable[A]
Типовые члены
класс WithFilter extends FilterMonadic[A, Repr]
Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.
- Определяющие классы
- TraversableLike
тип Self = Traversable[A]
Тип, реализующий этот traversable
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableLike
Абстрактные значения членов
абстрактный def underlying: Traversable[A]
Объект traversable, для которого перенаправляются вызовы.
- Атрибуты
- protected
Члены-значения конкретных типов
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- returns
trueесли !(this == that), иначе false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode, за исключением упакованных числовых типов и null. Для числовых типов возвращает значение хэша, соответствующее равенству значений: если два экземпляра типа значения сравниваются как true, то ## будет генерировать одинаковое значение хэша для каждого из них. Для null возвращает хэш-код, где null.hashCode бросает NullPointerException.
- returns
значение хэша, соответствующее ==
- Definition Classes
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из TraversableForwarder[A] в any2stringadd[TraversableForwarder[A]], выполненное методом any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Возвращает новую коллекцию, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элементов возвращаемой коллекции — это наиболее специфический суперкласс, охватывающий типы элементов двух операндов.
- B
тип элементов возвращаемой коллекции.
- That
класс возвращаемой коллекции. По возможности,
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, является ли тип элементаBдопустимым для этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
добавляемая коллекция.
- bf
неявное значение класса
CanBuildFrom, которое определяет возвращаемый классThatпо текущему типу представленияReprи новому типу элементаB.- returns
новая коллекция типа
That, содержащая все элементы этой коллекции, за которыми следуют все элементыthat.
- Definition Classes
- TraversableLike → GenTraversableLike
def ++:[B >: A, That](that: Traversable[B])(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Как и ++, возвращает новую коллекцию, содержащую элементы левого операнда, за которыми следуют элементы правого операнда.
Отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоника: знак ДВОЕТОЧИЯ стоит со стороны нового типа КОЛЛЕКЦИИ.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
Этот перегруз существует, потому что: для реализации ++: следует переиспользовать реализацию ++, так как многие коллекции переопределяют её более эффективными версиями.
Так как TraversableOnce не имеет метода ++, нам нужно реализовать его напрямую, но Traversable и ниже могут использовать перегруз.
- B
тип элементов возвращаемой коллекции.
- That
класс возвращаемой коллекции. По возможности,
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, является ли тип элементаBдопустимым для этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
добавляемая коллекция.
- bf
неявное значение класса
CanBuildFrom, которое определяет возвращаемый классThatпо текущему типу представленияReprи новому типу элементаB.- returns
новая коллекция типа
That, содержащая все элементы этой коллекции, за которыми следуют все элементыthat.
- Definition Classes
- TraversableLike
def ++:[B](that: TraversableOnce[B]): Traversable[B]
Как и ++, возвращает новую коллекцию, содержащую элементы левого операнда, за которыми следуют элементы правого операнда.
Отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоника: знак ДВОЕТОЧИЯ стоит со стороны нового типа КОЛЛЕКЦИИ.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
- B
тип элементов возвращаемой коллекции.
- that
добавляемая коллекция.
- returns
новая коллекция, содержащая все элементы этой коллекции, за которыми следуют все элементы
that.
- Definition Classes
- TraversableLike
def ->[B](y: B): (TraversableForwarder[A], B)
- Implicit
- Этот член добавлен неявным преобразованием из TraversableForwarder[A] в ArrowAssoc[TraversableForwarder[A]] с помощью метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
def /:[B](z: B)(op: (B, A) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого набора, слева направо.
Примечание: /: — это альтернативная запись для foldLeft; z /: xs — это то же самое, что и xs foldLeft z.
Примеры:
Обратите внимание, что функция свертки, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_) b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y) c: Int = 15
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции слева направо с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn— элементы этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def :\[B](z: B)(op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению, справа налево.
Примечание: :\ — это альтернативная запись для foldRight; xs :\ z — это то же самое, что и xs foldRight z.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
Примеры:
Обратите внимание, что функция свертки, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_) b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y) c: Int = 15
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— элементы этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def addString(b: mutable.StringBuilder): mutable.StringBuilder
Добавляет все элементы этой коллекции в буфер строк. Текст, который записывается, состоит из строковых представлений (относительно метода toString) всех элементов этой коллекции без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
- b
буфер строк, в который добавляются элементы.
- returns
буфер строк
b, в который были добавлены элементы.
- Definition Classes
- TraversableForwarder → TraversableOnce
def addString(b: mutable.StringBuilder, sep: String): mutable.StringBuilder
Добавляет все элементы этой коллекции в буфер строк, используя разделительную строку. Записываемый текст состоит из строковых представлений (относительно метода toString) всех элементов этой коллекции, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
- b
буфер строк, в который добавляются элементы.
- sep
разделительная строка.
- returns
буфер строк
b, в который были добавлены элементы.
- Definition Classes
- TraversableForwarder → TraversableOnce
def addString(b: mutable.StringBuilder, start: String, sep: String, end: String): mutable.StringBuilder
Добавляет все элементы этого набора в строковый буфер, используя начальную, конечную и разделительные строки. Текст, который будет записан, начинается со строки start и заканчивается строкой end. Внутри строковые представления (относительно метода toString) всех элементов этого набора разделены строкой sep.
Пример:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
- b
строковый буфер, в который добавляются элементы.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- TraversableForwarder → TraversableOnce
def aggregate[B](z: ⇒ B)(seqop: (B, A) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общий вид fold и reduce. Он аналогичен foldLeft, поскольку не требует, чтобы результат был супертипом типа элемента. Кроме того, он позволяет обрабатывать параллельные коллекции по частям и затем комбинировать промежуточные результаты.
aggregate разбивает набор или итератор на разделы и обрабатывает каждый раздел, последовательно применяя seqop, начиная с z (как foldLeft). Эти промежуточные результаты затем комбинируются с помощью combop (как fold). Реализация этой операции может работать с произвольным количеством разделов коллекции (даже 1), поэтому combop может вызываться произвольное количество раз (даже 0).
Например, рассмотрим суммирование целочисленных значений списка символов. Начальное значение для суммы равно 0. Во-первых, seqop преобразует каждый символ ввода в целое число и добавляет его к сумме (раздела). Затем combop просто должна суммировать промежуточные результаты разделов:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип накопленных результатов
- z
начальное значение для накопленного результата раздела — это обычно нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования) и может быть вычислен более одного раза- seqop
оператор, используемый для накопления результатов внутри раздела
- combop
ассоциативный оператор, используемый для объединения результатов из разных разделов
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def asInstanceOf[T0]: T0
Приведение объекта-получателя к типу T0.
Обратите внимание, что успех приведения во время выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] выбросит исключение ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] этого не сделает. В последнем примере, поскольку аргумент типа стирается на этапе компиляции, невозможно проверить, соответствуют ли содержимое списка требуемому типу.
- returns
объект-получатель.
- Definition Classes
- Any
- Исключения
ClassCastException, если объект-получатель не является экземпляром стираемого типаT0.
def clone(): AnyRef
Создает копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- returns
копию объекта-получателя.
def collect[B](pf: PartialFunction[A, B]): Traversable[B]
Создаёт новый набор, применяя частичную функцию ко всем элементам этого набора, для которых функция определена.
- B
тип элементов возвращаемого набора.
- pf
частичная функция, которая фильтрует и отображает набор.
- returns
новый набор, полученный путём применения данной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент в наборе или итераторе, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- pf
частичная функция
- returns
значение типа Option, содержащее pf, применённую к первому значению, для которого она определена, или
None, если такового нет.
- Definition Classes
- TraversableOnce
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def companion: GenericCompanion[Traversable]
Объект-компаньон фабрики, создающий экземпляры класса Traversable. (или его Iterable суперкласс, где класс Traversable не является Seq.)
- Definition Classes
- Traversable → GenTraversable → GenericTraversableTemplate
def copyToArray(xs: Array[A]): Unit
Копирует элементы этого набора в массив. Заполняет данный массив xs значениями из этого набора. Копирование остановится, как только будет достигнут конец текущего набора или конец целевого массива.
Примечание: не завершится для наборов бесконечного размера.
- xs
массив для заполнения.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этого набора в массив. Заполняет данный массив xs значениями из этого набора, начиная с индекса start. Копирование остановится, как только будет достигнут конец текущего набора или конец целевого массива.
Примечание: не завершится для наборов бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этого набора в массив. Заполняет данный массив xs не более чем len элементами из этого набора, начиная с позиции start. Копирование остановится, как только будет достигнут конец текущего набора, конец целевого массива или будет скопировано len элементов.
Примечание: не завершится для наборов бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество элементов для копирования.
- Definition Classes
- TraversableForwarder → TraversableLike → TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: A](dest: Buffer[B]): Unit
Копирует все элементы этого набора в буфер.
Примечание: не завершится для наборов бесконечного размера.
- dest
Буфер, в который копируются элементы.
- Definition Classes
- TraversableForwarder → TraversableOnce
def count(p: (A) ⇒ Boolean): Int
Подсчитывает количество элементов в наборе, удовлетворяющих предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def drop(n: Int): Traversable[A]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
- n
количество элементов, которые нужно исключить из этого набора.
- returns
набор, состоящий из всех элементов этого набора, кроме первых
nэлементов, или пустой набор, если в этом наборе меньшеnэлементов. Еслиnотрицательное, не исключать никакие элементы.
- Definition Classes
- TraversableLike → GenTraversableLike
def dropWhile(p: (A) ⇒ Boolean): Traversable[A]
Удаляет самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
- returns
наибольший суффикс этого набора, первый элемент которого не удовлетворяет предикату
p.
- Definition Classes
- TraversableLike → GenTraversableLike
def ensuring(cond: (TraversableForwarder[A]) ⇒ Boolean, msg: ⇒ Any): TraversableForwarder[A]
- Implicit
- Этот член добавлен с помощью неявного преобразования из TraversableForwarder[A] в Ensuring[TraversableForwarder[A]] посредством метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (TraversableForwarder[A]) ⇒ Boolean): TraversableForwarder[A]
- Implicit
- Этот член добавлен с помощью неявного преобразования из TraversableForwarder[A] в Ensuring[TraversableForwarder[A]] посредством метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): TraversableForwarder[A]
- Implicit
- Этот член добавлен с помощью неявного преобразования из TraversableForwarder[A] в Ensuring[TraversableForwarder[A]] посредством метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): TraversableForwarder[A]
- Implicit
- Этот член добавлен с помощью неявного преобразования из TraversableForwarder[A] в Ensuring[TraversableForwarder[A]] посредством метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на не-null экземплярах AnyRef, и имеет три дополнительных свойства:
-
Он согласован: для любых не-null экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-null экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true. При переопределении методов equals или hashCode важно обеспечить, чтобы их поведение было согласовано с равенством ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и они должны хешироваться к одному и тому же значению (o1.hashCode == o2.hashCode).
- returns
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def equals(arg0: Any): Boolean
Метод равенства для ссылочных типов. Реализация по умолчанию делегирует вызов методу eq.
См. также equals в scala.Any.
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def exists(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат хотя бы для одного элемента этого набора.
Примечание: может не завершиться для наборов бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
falseесли этот набор пустой, иначеtrueесли заданный предикатpвыполняется для некоторых элементов этого набора, иначеfalse
- Definition Classes
- TraversableForwarder → TraversableLike → TraversableOnce → GenTraversableOnce
def filter(p: (A) ⇒ Boolean): Traversable[A]
Выбирает все элементы этого итерируемого набора, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый итерируемый набор, содержащий все элементы этого итерируемого набора, удовлетворяющие заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def filterNot(p: (A) ⇒ Boolean): Traversable[A]
Выбирает все элементы этого итерируемого набора, которые не удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый итерируемый набор, содержащий все элементы этого итерируемого набора, которые не удовлетворяют заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def finalize(): Unit
Вызывается сборщиком мусора для объекта-приемника, когда к объекту больше нет ссылок.
Подробности о том, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- Note
не указано SLS как член AnyRef
def find(p: (A) ⇒ Boolean): Option[A]
Находит первый элемент набора, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базового набора не является упорядоченным.
- p
предикат, используемый для проверки элементов.
- returns
значение типа Option, содержащее первый элемент в наборе, который удовлетворяет
p, илиNone, если такового нет.
- Definition Classes
- TraversableForwarder → TraversableLike → TraversableOnce → GenTraversableOnce
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Traversable[B]
Создает новый набор, применяя функцию ко всем элементам этого набора и используя элементы полученных наборов.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип результирующего набора определяется статическим типом набора. Иногда это может привести к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap (word => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
- B
тип элементов возвращаемого набора.
- f
функция для применения к каждому элементу.
- returns
новый набор, полученный путем применения заданной функции, принимающей набор
fк каждому элементу этого набора и конкатенации результатов.
- Definition Classes
- TraversableLike → GenTraversableLike → FilterMonadic
def flatten[B]: Traversable[B]
Преобразует этот набор итерируемых наборов в набор, образованный элементами этих итерируемых наборов.
Тип результирующего набора будет определяться статическим типом набора. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
- B
тип элементов каждого итерируемого набора.
- returns
новый набор, полученный путем конкатенации всех коллекций элементов.
- Definition Classes
- GenericTraversableTemplate
def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1
Вычисляет результат, применяя заданный ассоциативный бинарный оператор к элементам этого итерируемого набора или итератора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
Примечание: не завершится для наборов бесконечного размера.
- A1
параметр типа для бинарного оператора, надтипа
A.- z
нейтральный элемент для операции сворачивания; может быть добавлен к результату произвольное количество раз и не должен изменить результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора сворачивания
opмежду всеми элементами иz, илиzесли этот итерируемый набор или итератор пустой.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def foldLeft[B](z: B)(op: (B, A) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого набора, слева направо.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого набора, слева направо с начальным значениемzслева:op(...op(z, x_1), x_2, ..., x_n)
где
x1, ..., xnявляются элементами этого набора. Возвращаетzесли этот набор пуст.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def foldRight[B](z: B)(op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого набора и начальному значению, справа налево.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого набора, справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xnявляются элементами этого набора. Возвращаетzесли этот набор пуст.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def forall(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершаться для наборов бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
trueесли этот набор пуст или заданный предикатpвыполняется для всех элементов этого набора, иначеfalse.
- Definition Classes
- TraversableForwarder → TraversableLike → TraversableOnce → GenTraversableOnce
def foreach(f: (A) ⇒ Unit): Unit
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fотбрасывается.
- Definition Classes
- TraversableForwarder → GenericTraversableTemplate → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной format строкой. Строки форматирования аналогичны String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавлен с помощью неявного преобразования из TraversableForwarder[A] в StringFormat[TraversableForwarder[A]] с помощью метода StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
def genericBuilder[B]: Builder[B, Traversable[B]]
Обобщенный билдер, создающий экземпляры Traversable с произвольными типами элементов.
- Definition Classes
- GenericTraversableTemplate
final def getClass(): Class[_]
Возвращает представление runtime класса объекта.
- returns
объект класса, соответствующий runtime типу получателя.
def groupBy[K](f: (A) ⇒ K): immutable.Map[K, Traversable[A]]
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда будет принудительно создавать представление и возвращать новую итерируемую коллекцию.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- returns
-
Карта от ключей к итерируемым коллекциям, для которой выполняется следующее инвариантное условие:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kсопоставлен с итерируемой коллекцией тех элементовx, для которыхf(x)равноk.
- Definition Classes
- TraversableLike → GenTraversableLike
def hasDefiniteSize: Boolean
Проверяет, известно ли, что эта коллекция имеет конечный размер. Все строгие коллекции известны как имеющие конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true если все элементы были вычислены. Он возвращает false если поток еще не был вычислен до конца. Непустые итераторы обычно возвращают false даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечных размеров. Типичный режим отказа — бесконечный цикл. Эти методы всегда пытаются выполнить обход без предварительной проверки того, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер определен и бесконечная обработка не является проблемой.
- returns
trueесли известно, что у этой коллекции конечный размер,falseв противном случае.
- Definition Classes
- TraversableForwarder → TraversableLike → TraversableOnce → GenTraversableOnce
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- returns
значение кода хэширования для этого объекта.
def head: A
Выбирает первый элемент этой коллекции.
- returns
первый элемент этой коллекции.
- Definition Classes
- TraversableForwarder → GenericTraversableTemplate → TraversableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementExceptionесли коллекция пуста.
def headOption: Option[A]
Выбирает первый элемент, если он есть.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
первый элемент этой коллекции, если она не пуста,
Noneесли она пуста.
- Definition Classes
- TraversableForwarder → TraversableLike → GenTraversableLike
def init: Traversable[A]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме последнего.
- Definition Classes
- TraversableLike → GenTraversableLike
- Exceptions thrown
UnsupportedOperationExceptionесли итерируемая коллекция пуста.
def inits: Iterator[Traversable[A]]
Итерируется по начальным фрагментам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, промежуточные значения — результаты последовательного применения init.
- returns
итератор по всем начальным фрагментам этой итерируемой коллекции
- Definition Classes
- TraversableLike
List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)
def isEmpty: Boolean
Проверяет, пуста ли эта коллекция.
- returns
trueесли коллекция не содержит элементов,falseв противном случае.
- Definition Classes
- TraversableForwarder → GenericTraversableTemplate → TraversableLike → TraversableOnce → GenTraversableOnce
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип объекта-получателя T0.
Обратите внимание, что результат проверки учитывает стирание семантики Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, из-за стирания аргумента типа во время компиляции невозможно проверить, являются ли содержимое списка указанного типа.
- returns
trueесли объект-получатель является экземпляром стирания типаT0;falseв противном случае.
- Definition Classes
- Any
final def isTraversableAgain: Boolean
Проверяет, может ли этот коллектор итерироваться многократно.
- returns
true
- Definition Classes
- TraversableLike → GenTraversableLike → GenTraversableOnce
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип основного коллектора не упорядочен.
- returns
Последний элемент этого коллектора.
- Definition Classes
- TraversableForwarder → TraversableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementExceptionЕсли коллектор пуст.
def lastOption: Option[A]
Возвращает последний элемент в виде Option.
Примечание: может возвращать разные результаты при разных запусках, если тип основного коллектора не упорядочен.
- returns
последний элемент этого коллектора, если он непустой, или
Noneесли он пустой.
- Definition Classes
- TraversableForwarder → TraversableLike → GenTraversableLike
def map[B](f: (A) ⇒ B): Traversable[B]
Создает новый коллектор, применяя функцию ко всем элементам исходного коллектора.
- B
Тип элементов возвращаемого коллектора.
- f
Функция, применяемая к каждому элементу.
- returns
Новый коллектор, полученный путем применения данной функции
fк каждому элементу этого коллектора и сбора результатов.
- Definition Classes
- TraversableLike → GenTraversableLike → FilterMonadic
def max: A
Находит наибольший элемент.
- returns
наибольший элемент этого коллектора.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот коллектор пуст.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого коллектора с наибольшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот коллектор пуст.
def min: A
Находит наименьший элемент.
- returns
наименьший элемент этого коллектора.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот коллектор пуст.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого коллектора с наименьшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот коллектор пуст.
def mkString: String
Отображает все элементы этой коллекции в строке.
- возвращает
строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода
toString) всех элементов этой коллекции следуют друг за другом без разделительной строки.
- Определяющие классы
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этой коллекции в строке с использованием разделительной строки.
- sep
разделительная строка.
- возвращает
строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода
toString) всех элементов этой коллекции разделены строкойsep.
- Определяющие классы
- TraversableForwarder → TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этой коллекции в строке с использованием начальной, конечной и разделительных строк.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- возвращает
строковое представление этой коллекции. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (относительно методаtoString) всех элементов этой коллекции разделены строкойsep.
- Определяющие классы
- TraversableForwarder → TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Определяющие классы
- AnyRef
def newBuilder: Builder[A, Traversable[A]]
Строитель, который создает экземпляры типа Traversable[A]
- Атрибуты
- protected[this]
- Определяющие классы
- GenericTraversableTemplate → HasNewBuilder
def nonEmpty: Boolean
Проверяет, не пуста ли коллекция.
- возвращает
trueесли коллекция содержит как минимум один элемент,falseв противном случае.
- Определяющие классы
- TraversableForwarder → TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуждает один поток, ожидающий монитор объекта-получателя.
- Определяющие классы
- AnyRef
- Аннотации
- @native()
- Примечание
не указано SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все потоки, ожидающие монитор объекта-получателя.
- Определяющие классы
- AnyRef
- Аннотации
- @native()
- Примечание
не указано SLS как член AnyRef
def par: ParIterable[A]
Возвращает параллельную реализацию этой коллекции.
Для большинства типов коллекций этот метод создает новую параллельную коллекцию, копируя все элементы. Для этих коллекций par занимает линейное время. Изменяемые коллекции в этой категории не создают изменяемую параллельную коллекцию с той же базовой структурой данных, поэтому изменения в одной коллекции не будут отражаться в другой.
Специальные коллекции (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельную коллекцию, которая использует ту же базовую структуру данных. Для этих коллекций par занимает постоянное или сублинейное время.
Все параллельные коллекции возвращают ссылку на себя.
- возвращает
параллельная реализация этой коллекции
- Определяющие классы
- Parallelizable
def parCombiner: Combiner[A, ParIterable[A]]
Реализация par по умолчанию использует комбинатор, предоставленный этим методом, для создания новой параллельной коллекции.
- возвращает
комбинатор для параллельной коллекции типа
ParRepr
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableLike → Parallelizable
def partition(p: (A) ⇒ Boolean): (Traversable[A], Traversable[A])
Разделяет эту коллекцию итерируемых элементов на две коллекции итерируемых элементов в соответствии с предикатом.
- p
предикат, на основе которого происходит разделение.
- returns
пара коллекций итерируемых элементов: первая коллекция содержит все элементы, удовлетворяющие предикату
p, а вторая — все элементы, которые не удовлетворяют ему. Относительный порядок элементов в полученных коллекциях совпадает с порядком в исходной коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
def product: A
Перемножает элементы этой коллекции.
- returns
произведение всех элементов в этой коллекции чисел типа
Int. ВместоInt, можно использовать любой другой типTс неявнымNumeric[T]реализацией, который может быть использован в качестве типа элементов коллекции и как тип результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1
Применяет заданный ассоциативный бинарный оператор ко всем элементам этой коллекции.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Тип параметр для бинарного оператора, являющийся надтипом
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce
opмежду всеми элементами, если коллекция не пустая.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если коллекция пустая.
def reduceLeft[B >: A](op: (B, A) ⇒ B): B
Применяет бинарный оператор ко всем элементам коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип подлежащей коллекции не упорядочен или оператор не ассоциативный и коммутативный.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции слева направо:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)где
x1, ..., xn— элементы этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce
- Исключения
UnsupportedOperationException, если коллекция пустая.
def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
Возможно применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип подлежащей коллекции не упорядочен или оператор не ассоциативный и коммутативный.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
опциональное значение, содержащее результат
reduceLeft(op)если коллекция не пустая,Noneв противном случае.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]
Применяет заданный ассоциативный бинарный оператор ко всем элементам итерируемого объекта, если они есть.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Тип параметр для бинарного оператора, являющийся надтипом
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Опциональное значение, содержащее результат применения оператора reduce
opмежду всеми элементами, если коллекция не пуста,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceRight[B >: A](op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого набора, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции, двигаясь справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn— элементы этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если эта коллекция пуста.
def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
Опционально применяет бинарный оператор ко всем элементам этой коллекции, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
опциональное значение, содержащее результат
reduceRight(op)если эта коллекция непуста,Noneв противном случае.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def repr: Traversable[A]
Коллекция типа traversable collection, лежащая в основе этого объекта TraversableLike. По умолчанию она реализуется как сам объект TraversableLike, но это можно переопределить.
- Definition Classes
- TraversableLike → GenTraversableLike
def reversed: List[A]
- Attributes
- protected[this]
- Definition Classes
- TraversableOnce
def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[Traversable[A], B, That]): That
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
- B
тип элементов результирующей коллекции
- That
тип результирующей коллекции
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- cbf
фабрика комбайнеров, которая предоставляет комбайнер
- returns
новая коллекция traversable, содержащая префиксное сканирование элементов в этой коллекции traversable
- Definition Classes
- TraversableLike → GenTraversableLike
def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Создает коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Головной элемент коллекции — это последний кумулятивный результат.
Примечание: не завершается для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементовB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0) Поведение
scanRightизменилось. Предыдущее поведение можно воспроизвести с помощью scanRight.reverse.
def seq: Traversable[A]
Версия этой коллекции со всеми операциями, реализованными последовательно (т.е. в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределяется для возврата последовательной реализации этой коллекции. В обоих случаях его сложность составляет O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce
def size: Int
Размер этой коллекции.
Примечание: не завершается для коллекций бесконечного размера.
- returns
количество элементов в этой коллекции.
- Definition Classes
- TraversableForwarder → GenTraversableLike → TraversableOnce → GenTraversableOnce
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если его можно вычислить без больших затрат.
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер нельзя определить без больших затрат.
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(from: Int, until: Int): Traversable[A]
Выбирает интервал элементов. Возвращаемая коллекция состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
итерируемая коллекция, содержащая элементы, большие или равные индексу
from, и до (но не включая) индексаuntilэтой итерируемой коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
def span(p: (A) ⇒ Boolean): (Traversable[A], Traversable[A])
Разделяет эту итерируемую коллекцию на пару префикс/суффикс согласно предикату.
Примечание: c span p эквивалентно (возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что оценка предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
пара, состоящая из самого длинного префикса этой итерируемой коллекции, элементы которого удовлетворяют
p, и остальной части этой итерируемой коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
def splitAt(n: Int): (Traversable[A], Traversable[A])
Разделяет эту итерируемую коллекцию на две части в заданной позиции. Примечание: c splitAt n эквивалентно (возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
позиция разделения.
- returns
пара итерируемых коллекций, состоящих из первых
nэлементов этой итерируемой коллекции и других элементов.
- Definition Classes
- TraversableLike → GenTraversableLike
def stringPrefix: String
Определяет префикс представления этого объекта в формате toString.
- returns
строковое представление, которое начинается с результата применения
toStringк этому итерируемому набору. По умолчанию префикс строки — простое имя класса итерируемого набора.
- Классы-определения
- TraversableLike → GenTraversableLike
def sum: A
Суммирует элементы этого набора.
- returns
сумма всех элементов в этом наборе чисел типа
Int. ВместоInt, может быть использован любой другой типTс неявной реализациейNumeric[T]в качестве типа элементов набора и типа результатаsum. Примеры таких типов:Long,Float,Double,BigInt.
- Классы-определения
- TraversableForwarder → TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Классы-определения
- AnyRef
def tail: Traversable[A]
Выбирает все элементы, кроме первого.
Примечание: результаты могут отличаться при разных запусках, если тип базового набора не упорядочен.
- returns
итерируемый набор, содержащий все элементы этого итерируемого набора, кроме первого.
- Классы-определения
- TraversableLike → GenTraversableLike
- Исключения
java.lang.UnsupportedOperationException, если итерируемый набор пуст.
def tails: Iterator[Traversable[A]]
Итерируется по хвостам этого итерируемого набора. Первое значение — это сам итерируемый набор, а последнее — пустой итерируемый набор. Промежуточные значения — результаты последовательных применений tail.
- returns
итератор по всем хвостам этого итерируемого набора
- Классы-определения
- TraversableLike
List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)
def take(n: Int): Traversable[A]
Выбирает первые n элементов.
Примечание: результаты могут отличаться при разных запусках, если тип базового набора не упорядочен.
- n
количество элементов для извлечения из этого итерируемого набора.
- returns
итерируемый набор, содержащий только первые
nэлементов этого итерируемого набора, или весь итерируемый набор, если он содержит меньшеnэлементов. Еслиnотрицательно, возвращает пустой итерируемый набор.
- Классы-определения
- TraversableLike → GenTraversableLike
def takeWhile(p: (A) ⇒ Boolean): Traversable[A]
Извлекает самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Примечание: результаты могут отличаться при разных запусках, если тип базового набора не упорядочен.
- returns
самую длинную префиксную последовательность этого итерируемого набора, каждый элемент которой удовлетворяет предикату
p.
- Классы-определения
- TraversableLike → GenTraversableLike
def thisCollection: Traversable[A]
Базовый набор, рассматриваемый как экземпляр Traversable. По умолчанию это сам текущий набор, но может быть переопределён.
- Атрибуты
- protected[this]
- Классы-определения
- TraversableLike
def to[Col[_]]: Col[A]
Преобразует этот набор в другой, копируя все элементы.
Примечание: не завершит работу для наборов бесконечной длины.
- Col
Тип набора для построения.
- returns
новый набор, содержащий все элементы этого набора.
- Классы-определения
- TraversableLike → TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует этот набор в массив.
Примечание: не завершит работу для наборов бесконечной длины.
- returns
массив, содержащий все элементы этого набора. Должна быть доступна
ClassTagдля типа элементов этого набора.
- Классы-определения
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def toBuffer[B >: A]: Buffer[B]
Использует содержимое этого набора для создания нового изменяемого буфера.
Примечание: не завершится для коллекций бесконечного размера.
- returns
буфер, содержащий все элементы этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def toCollection(repr: Traversable[A]): Traversable[A]
Преобразование из коллекций типа Repr в объекты Traversable. По умолчанию это реализуется просто как приведение типа, но это можно переопределить.
- Attributes
- protected[this]
- Definition Classes
- TraversableLike
def toIndexedSeq: immutable.IndexedSeq[A]
Преобразует эту коллекцию в индексированную последовательность.
Примечание: не завершится для коллекций бесконечного размера.
- returns
индексированная последовательность, содержащая все элементы этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def toIterable: Iterable[A]
Преобразует эту коллекцию в итерируемую коллекцию. Обратите внимание, что выбор целевого Iterable является ленивым в этой реализации по умолчанию, поскольку этот TraversableOnce может быть ленивым и невычисленным (то есть это может быть итератор, который можно пройти только один раз).
Примечание: не завершится для коллекций бесконечного размера.
- returns
итерируемый объект, содержащий все элементы этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def toIterator: Iterator[A]
Возвращает итератор по элементам в этой итерируемой коллекции. Вернёт тот же итератор, если этот экземпляр уже является итератором.
Примечание: не завершится для коллекций бесконечного размера.
- returns
итератор, содержащий все элементы этой итерируемой коллекции.
- Definition Classes
- TraversableLike → GenTraversableOnce
def toList: immutable.List[A]
Преобразует эту коллекцию в список.
Примечание: не завершится для коллекций бесконечного размера.
- returns
список, содержащий все элементы этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def toMap[T, U]: Map[T, U]
Преобразует эту коллекцию в карту. Этот метод недоступен, если элементы не являются членами Tuple2, при этом каждый ((T, U)) становится парой ключ-значение в карте. Дублирующиеся ключи будут перезаписаны более поздними ключами: если это неупорядоченная коллекция, какой ключ находится в результирующей карте, не определено.
Примечание: не завершится для коллекций бесконечного размера.
- returns
карта типа
immutable.Map[T, U], содержащая все пары ключ/значение типа(T, U)этой коллекции.
- Definition Classes
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def toParArray: ParArray[T]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableForwarder[A] в CollectionsHaveToParArray[TraversableForwarder[A], T] выполненным методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование произойдёт только если неявное значение типа (TraversableForwarder[A]) ⇒ GenTraversableOnce[T] находится в области видимости.
- Definition Classes
- CollectionsHaveToParArray
def toSeq: Seq[A]
Преобразует эту коллекцию в последовательность. Как и в toIterable, в этом реализованном по умолчанию варианте она ленивая, так как эта TraversableOnce может быть ленивой и не вычисленной.
Примечание: не завершается для коллекций бесконечного размера.
- возвращает
последовательность, содержащую все элементы этой коллекции.
- Классы определений
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def toSet[B >: A]: immutable.Set[B]
Преобразует эту коллекцию в множество.
Примечание: не завершается для коллекций бесконечного размера.
- возвращает
множество, содержащее все элементы этой коллекции.
- Классы определений
- TraversableForwarder → TraversableOnce → GenTraversableOnce
def toStream: immutable.Stream[A]
Преобразует эту коллекцию в поток.
- возвращает
поток, содержащий все элементы этой коллекции.
- Классы определений
- TraversableForwarder → TraversableLike → GenTraversableOnce
def toString(): String
Преобразует эту коллекцию в строку.
- возвращает
строковое представление этой коллекции. По умолчанию эта строка состоит из
stringPrefixэтой коллекции, за которой следуют все элементы, разделенные запятыми и заключенные в скобки.
- Классы определений
- TraversableLike → Any
def toTraversable: Traversable[A]
Преобразует эту коллекцию в произвольную Traversable. Вернёт ту же коллекцию, если этот экземпляр уже является Traversable.
Примечание: не завершается для коллекций бесконечного размера.
- возвращает
Traversable, содержащий все элементы этой коллекции.
- Классы определений
- TraversableLike → TraversableOnce → GenTraversableOnce
- Аннотации
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toVector: Vector[A]
Преобразует эту коллекцию или итератор в вектор.
Примечание: не завершается для коллекций бесконечного размера.
- возвращает
вектор, содержащий все элементы этой коллекции или итератора.
- Классы определений
- TraversableOnce → GenTraversableOnce
def transpose[B](implicit asTraversable: (A) ⇒ GenTraversableOnce[B]): Traversable[Traversable[B]]
Транспонирует эту коллекцию коллекций в коллекцию коллекций.
Тип результирующей коллекции определяется статическим типом коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
- B
тип элементов каждой коллекции.
- asTraversable
явное преобразование, которое утверждает, что тип элемента этой коллекции является
Traversable.- возвращает
двумерная коллекция коллекций, в которой n-я строка — n-й столбец этой коллекции.
- Классы определений
- GenericTraversableTemplate
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.9.0)
transposeвызываетIllegalArgumentExceptionесли коллекции не имеют одинакового размера.- Исключения
IllegalArgumentException, если все коллекции в этой коллекции не имеют одинаковый размер.
def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (Traversable[A1], Traversable[A2])
Преобразует эту коллекцию пар в две коллекции первой и второй половины каждой пары.
val xs = Traversable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three))
- A1
тип первой половины пар элементов
- A2
тип второй половины пар элементов
- asPair
явное преобразование, которое утверждает, что тип элемента этой коллекции — пара.
- возвращает
пара коллекций, содержащая первую, соответственно вторую половину каждой пары элементов этой коллекции.
- Классы определений
- GenericTraversableTemplate
def unzip3[A1, A2, A3](implicit asTriple: (A) ⇒ (A1, A2, A3)): (Traversable[A1], Traversable[A2], Traversable[A3])
Преобразует это коллекцию троек в три коллекции первой, второй и третьей элементов каждой тройки.
val xs = Traversable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three),
// Traversable(1, 2, 3))
- A1
тип первого члена элементов троек
- A2
тип второго члена элементов троек
- A3
тип третьего члена элементов троек
- asTriple
явное преобразование, утверждающее, что тип элементов этой коллекции — тройка.
- returns
тройка коллекций, содержащая первый, второй, соответственно третий член каждого элемента тройки этой коллекции.
- Definition Classes
- GenericTraversableTemplate
def view(from: Int, until: Int): TraversableView[A, Traversable[A]]
Создаёт нестрогую представление среза этой коллекции итераций.
Примечание: разница между view и slice заключается в том, что view производит представление текущей коллекции итераций, тогда как slice производит новую коллекцию итераций.
Примечание: view(from, to) эквивалентно view.slice(from, to).
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- from
индекс первого элемента представления
- until
индекс элемента, следующего за представлением
- returns
нестрогое представление среза этой коллекции итераций, начинающееся с индекса
fromи продолжающееся до (но не включая) индексаuntil.
- Definition Classes
- TraversableLike
def view: TraversableView[A, Traversable[A]]
Создаёт нестрогое представление этой коллекции итераций.
- returns
нестрогое представление этой коллекции итераций.
- Definition Classes
- TraversableLike
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
def withFilter(p: (A) ⇒ Boolean): FilterMonadic[A, Traversable[A]]
Создаёт нестрогую фильтрацию этой коллекции итераций.
Примечание: разница между c filter p и c withFilter p заключается в том, что первая создаёт новую коллекцию, а вторая только ограничивает область действия последующих map, flatMap, foreach и withFilter операций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- p
предикат для проверки элементов
- returns
объект класса
WithFilter, который поддерживаетmap,flatMap,foreachиwithFilterоперации. Все эти операции применяются к тем элементам этой коллекции итераций, которые удовлетворяют предикатуp.
- Definition Classes
- TraversableLike → FilterMonadic
def →[B](y: B): (TraversableForwarder[A], B)
- Implicit
- Этот член добавлен неявным преобразованием из TraversableForwarder[A] в ArrowAssoc[TraversableForwarder[A]], выполненное методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
Затенённые неявные члены-значения
def filter(p: (A) ⇒ Boolean): TraversableOnce[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableForwarder[A] в MonadOps[A], выполненным методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать привязку типа:(traversableForwarder: MonadOps[A]).filter(p)
- Классы определений
- MonadOps
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableForwarder[A] в MonadOps[A], выполненным методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать привязку типа:(traversableForwarder: MonadOps[A]).flatMap(f)
- Классы определений
- MonadOps
def map[B](f: (A) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableForwarder[A] в MonadOps[A], выполненным методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать привязку типа:(traversableForwarder: MonadOps[A]).map(f)
- Классы определений
- MonadOps
def withFilter(p: (A) ⇒ Boolean): Iterator[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableForwarder[A] в MonadOps[A], выполненным методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать привязку типа:(traversableForwarder: MonadOps[A]).withFilter(p)
- Классы определений
- MonadOps
© 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/collection/generic/TraversableForwarder.html
Этот трейт реализует перенаправление для объектов traversable. Он перенаправляет все вызовы на другое traversable, за исключением:
toString,hashCode,equals,stringPrefixnewBuilder,viewВсе вызовы, создающие новое traversable того же типа.
(Начиная с версии 2.11.0) перенаправление ненадежно, так как оно не автоматизировано и новые методы могут быть забыты
2.8