Spec-Zone.ru › Scala 2.12 Library

Трейт scala.collection.GenSeqLike

trait GenSeqLike[+A, +Repr] extends GenIterableLike[A, Repr] with Equals with Parallelizable[A, ParSeq[A]]

Шаблонный трейт для всех последовательностей, которые могут быть пройдены параллельно.

Источник
GenSeqLike.scala
Линейные супертипы
Известные подклассы

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

abstract def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Repr, B, That]): That

Возвращает новую общую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента общей коллекции — это наиболее специфический суперкласс, охватывающий типы элементов двух операндов.

B

тип элемента возвращаемой коллекции.

That

класс возвращаемой коллекции. Где это возможно, That — это тот же класс, что и текущий класс коллекции Repr, но это зависит от того, допустим ли тип элемента B для этого класса, что означает, что найден неявный экземпляр типа CanBuildFrom[Repr, B, That].

that

объект для добавления.

bf

неявное значение класса CanBuildFrom, которое определяет класс результата That по типу текущего представления Repr и новому типу элемента B.

returns

новая коллекция типа That, которая содержит все элементы этой общей коллекции, за которыми следуют все элементы that.

Definition Classes
GenTraversableLike

abstract 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
GenTraversableOnce

abstract 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
GenTraversableOnce

abstract 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
GenTraversableOnce

abstract def apply(idx: Int): A

Выбирает элемент по его индексу в общем последовательности.

Пример:

scala> val x = List(1, 2, 3, 4, 5)
x: List[Int] = List(1, 2, 3, 4, 5)

scala> x(3)
res1: Int = 4
idx

Индекс для выбора.

returns

элемент этой общей последовательности по индексу idx, где 0 обозначает первый элемент.

Исключения

IndexOutOfBoundsException если idx не удовлетворяет 0 <= idx < length.

abstract def canEqual(that: Any): Boolean

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

that

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

returns

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

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

abstract def corresponds[B](that: GenSeq[B])(p: (A, B) ⇒ Boolean): Boolean

Проверяет, соответствует ли каждый элемент этой общей последовательности соответствующему элементу другой последовательности, удовлетворяя условию предиката.

B

тип элементов that

that

другая последовательность

p

условие предиката, которое связывает элементы из обеих последовательностей

returns

true если обе последовательности имеют одинаковую длину и p(x, y) является true для всех соответствующих элементов x этой общей последовательности и y из that, иначе false.

abstract def count(p: (A) ⇒ Boolean): Int

Подсчитывает количество элементов в коллекции или итераторе, которые удовлетворяют предикату.

p

предикат для проверки элементов.

returns

количество элементов, удовлетворяющих предикату p.

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

abstract def distinct: Repr

Создаёт новую общую последовательность из этой общей последовательности без дублирующих элементов.

Примечание: не будет завершаться для бесконечных коллекций.

returns

Новая общая последовательность, которая содержит первое вхождение каждого элемента из этой общей последовательности.

abstract def drop(n: Int): Repr

Выбирает все элементы, кроме первых n.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.

n

количество элементов, которые нужно удалить из этой общей коллекции.

returns

общая коллекция, состоящая из всех элементов этой общей коллекции, кроме первых n элементов, или пустой общей коллекции, если у этой общей коллекции меньше n элементов. Если n отрицательно, не удалять элементы.

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

abstract def dropWhile(pred: (A) ⇒ Boolean): Repr

Удаляет самый длинный префикс элементов, удовлетворяющих предикату.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.

pred

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

returns

самый длинный суффикс этой общей коллекции, первый элемент которой не удовлетворяет предикату p.

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

abstract def endsWith[B](that: GenSeq[B]): Boolean

Проверяет, заканчивается ли эта общая последовательность заданной последовательностью.

Примечание: не будет завершаться для бесконечных коллекций.

that

тестируемая последовательность

returns

true если эта общая последовательность имеет that в качестве суффикса, false в противном случае.

abstract def exists(p: (A) ⇒ Boolean): Boolean

Проверяет, выполняется ли предикат для хотя бы одного элемента этой коллекции или итератора.

Примечание: может не завершаться для бесконечных коллекций.

p

предикат для проверки элементов.

returns

true если заданный предикат p выполняется хотя бы для одного элемента этой коллекции или итератора, иначе false

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

abstract def filter(pred: (A) ⇒ Boolean): Repr

Выбирает все элементы этой общей коллекции, которые удовлетворяют предикату.

pred

предикат для проверки элементов.

returns

новая общая коллекция, состоящая из всех элементов этой общей коллекции, которые удовлетворяют заданному предикату p. Их порядок может не сохраняться.

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

abstract def filterNot(pred: (A) ⇒ Boolean): Repr

Выбирает все элементы этого общего набора, которые не удовлетворяют предикату.

pred

предикат, используемый для проверки элементов.

returns

новый общий набор, состоящий из всех элементов этого общего набора, которые не удовлетворяют заданному предикату p. Их порядок может не сохраняться.

Definition Classes
GenTraversableLike

abstract def find(p: (A) ⇒ Boolean): Option[A]

Находит первый элемент коллекции или итератора, удовлетворяющий предикату, если таковой существует.

Примечание: может не завершиться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.

p

предикат, используемый для проверки элементов.

returns

необязательное значение, содержащее первый элемент в коллекции или итераторе, который удовлетворяет p, или None, если таковой не существует.

Definition Classes
GenTraversableOnce

abstract def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1

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

Порядок, в котором операции выполняются над элементами, не указан и может быть недетерминированным.

Примечание: не будет завершаться для коллекций бесконечного размера.

A1

типовой параметр для бинарного оператора, супертип A.

z

нейтральный элемент для операции сворачивания; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например, Nil для конкатенации списков, 0 для сложения или 1 для умножения).

op

бинарный оператор, который должен быть ассоциативным.

returns

результат применения оператора сворачивания op между всеми элементами и z, или z, если эта коллекция или итератор пуст.

Definition Classes
GenTraversableOnce

abstract 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
GenTraversableOnce

abstract 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
GenTraversableOnce

abstract def forall(p: (A) ⇒ Boolean): Boolean

Проверяет, выполняется ли предикат для всех элементов этой коллекции или итератора.

Примечание: может не завершиться для коллекций бесконечного размера.

p

предикат, используемый для проверки элементов.

returns

true, если эта коллекция или итератор пуст, или заданный предикат p выполняется для всех элементов этой коллекции или итератора, в противном случае false.

Definition Classes
GenTraversableOnce

abstract def getClass(): Class[_]

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

returns

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

Definition Classes
Any

abstract def groupBy[K](f: (A) ⇒ K): GenMap[K, Repr]

Разделяет эту общую коллекцию на карту общих коллекций в соответствии с некоторой функцией-дискриминатором.

Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда заставляет представление и возвращает новую общую коллекцию.

K

тип ключей, возвращаемых функцией-дискриминатором.

f

функция-дискриминатор.

returns

Карта от ключей к общим коллекциям, такая что выполняется следующее инвариантное свойство:

(xs groupBy f)(k) = xs filter (x => f(x) == k)

То есть, каждый ключ k связан с общей коллекцией тех элементов x для которых f(x) равно k.

Definition Classes
GenTraversableLike

abstract def hasDefiniteSize: Boolean

Проверяет, известно ли, что эта коллекция или итератор имеют конечный размер. Все строгие коллекции, как известно, имеют конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true если все элементы были вычислены. Он возвращает false если поток еще не вычислен до конца. Непустые итераторы обычно возвращают false даже если они были созданы из коллекции с известным конечным размером.

Примечание: многие методы коллекций не будут работать с коллекциями бесконечных размеров. Типичный режим отказа — бесконечный цикл. Эти методы всегда пытаются пройтись, не проверяя сначала, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер хорошо определен и бесконечное выполнение не является проблемой.

returns

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

Definition Classes
GenTraversableOnce

abstract def head: A

Выбирает первый элемент этой общей коллекции.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

returns

первый элемент этой общей коллекции.

Definition Classes
GenTraversableLike
Exceptions thrown

NoSuchElementException если общая коллекция пуста.

abstract def headOption: Option[A]

Необязательно выбирает первый элемент.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

returns

первый элемент этой общей коллекции, если она непустая, None если она пуста.

Definition Classes
GenTraversableLike

abstract def indexWhere(p: (A) ⇒ Boolean, from: Int): Int

Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на определенном начальном индексе.

Примечание: может не завершиться для коллекций бесконечного размера.

p

предикат, используемый для проверки элементов.

from

начальный индекс

returns

индекс >= from первого элемента этой общей последовательности, удовлетворяющего предикату p, или -1, если таковой не существует.

abstract def init: Repr

Выбирает все элементы, кроме последнего.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

returns

общая коллекция, состоящая из всех элементов этой общей коллекции, кроме последнего.

Definition Classes
GenTraversableLike
Exceptions thrown

UnsupportedOperationException если общая коллекция пуста.

abstract def isEmpty: Boolean

Проверяет, пуста ли коллекция или итератор.

Примечание: Реализации в подклассах, которые не являются многократно просматриваемыми, должны позаботиться о том, чтобы не потреблять никаких элементов, когда isEmpty вызывается.

returns

true если коллекция или итератор не содержат элементов, false в противном случае.

Definition Classes
GenTraversableOnce

abstract def isTraversableAgain: Boolean

Проверяет, можно ли эту общую коллекцию многократно проходить.

returns

true

Definition Classes
GenTraversableLike → GenTraversableOnce

abstract def iterator: Iterator[A]

Definition Classes
GenIterableLike

abstract def last: A

Выбирает последний элемент.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

returns

Последний элемент этой общей коллекции.

Definition Classes
GenTraversableLike
Exceptions thrown

NoSuchElementException Если общая коллекция пуста.

abstract def lastIndexWhere(p: (A) ⇒ Boolean, end: Int): Int

Находит индекс последнего элемента, удовлетворяющего некоторому предикату перед или на заданном конечном индексе.

p

предикат, используемый для проверки элементов.

returns

индекс <= end последнего элемента этой общей последовательности, удовлетворяющего предикату p, или -1, если таковой не существует.

abstract def lastOption: Option[A]

Возвращает последний элемент.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

returns

последний элемент этого общего набора$ если он не пустой, None если он пустой.

Definition Classes
GenTraversableLike

abstract def length: Int

Длина общего последовательности.

Примечание: не завершит работу для бесконечных коллекций.

Примечание: xs.length и xs.size дают одинаковый результат.

returns

количество элементов в этой общей последовательности.

Exceptions thrown

IllegalArgumentException, если длина последовательности не может быть представлена в Int, например, (-1 to Int.MaxValue).length.

abstract def mkString: String

Отображает все элементы этой коллекции или итератора в строке.

returns

строковое представление этой коллекции или итератора. В результирующей строке строковые представления (относительно метода toString) всех элементов этой коллекции или итератора следуют друг за другом без разделительной строки.

Definition Classes
GenTraversableOnce

abstract def mkString(sep: String): String

Отображает все элементы этой коллекции или итератора в строке с использованием разделительной строки.

sep

разделительная строка.

returns

строковое представление этой коллекции или итератора. В результирующей строке строковые представления (относительно метода toString) всех элементов этой коллекции или итератора разделены строкой sep.

Definition Classes
GenTraversableOnce
Пример:

    List(1, 2, 3).mkString("|") = "1|2|3"

abstract def mkString(start: String, sep: String, end: String): String

Отображает все элементы этой коллекции или итератора в строке с использованием начальной, конечной и разделительной строк.

start

начальная строка.

sep

разделительная строка.

end

конечная строка.

returns

строковое представление этой коллекции или итератора. Результирующая строка начинается со строки start и заканчивается строкой end. Внутри, строковые представления (относительно метода toString) всех элементов этой коллекции или итератора разделены строкой sep.

Definition Classes
GenTraversableOnce
Пример:

    List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"

abstract def nonEmpty: Boolean

Проверяет, не пустая ли коллекция или итератор.

returns

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

Definition Classes
GenTraversableOnce

abstract def parCombiner: Combiner[A, ParSeq[A]]

Реализация по умолчанию par использует комбинирующий элемент, предоставленный этим методом, для создания новой параллельной коллекции.

returns

комбинирующий элемент для параллельной коллекции типа ParRepr

Attributes
protected[this]
Definition Classes
Parallelizable

abstract def partition(pred: (A) ⇒ Boolean): (Repr, Repr)

Разделяет эту общую коллекцию на две общие коллекции в соответствии с предикатом.

pred

предикат для разделения.

returns

пара общих коллекций: первая общая коллекция состоит из всех элементов, удовлетворяющих предикату p, а вторая — из всех элементов, которые не удовлетворяют этому предикату. Относительный порядок элементов в результирующих общих коллекциях может не сохраняться.

Definition Classes
GenTraversableLike

abstract def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1

Редукция элементов этой коллекции или итератора с использованием указанного ассоциативного бинарного оператора.

Порядок выполнения операций над элементами не определен и может быть не детерминированным.

A1

Параметр типа для бинарного оператора, супертип A.

op

Бинарный оператор, который должен быть ассоциативным.

returns

Результат применения оператора reduce op между всеми элементами, если коллекция или итератор не пустые.

Definition Classes
GenTraversableOnce
Exceptions thrown

UnsupportedOperationException, если эта коллекция или итератор пустые.

abstract def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]

Необязательно применяет бинарный оператор ко всем элементам этой коллекции или итератора, слева направо.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.

B

тип результата бинарного оператора.

op

бинарный оператор.

returns

значение типа Option, содержащее результат reduceLeft(op) если эта коллекция или итератор непустые, None в противном случае.

Definition Classes
GenTraversableOnce

abstract def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]

Редуцирует элементы этой коллекции или итератора, если таковые имеются, используя указанный ассоциативный бинарный оператор.

Порядок выполнения операций над элементами не определен и может быть не детерминированным.

A1

Параметр типа для бинарного оператора, являющийся супертипом A.

op

Бинарный оператор, который должен быть ассоциативным.

returns

Значение типа Option, содержащее результат применения редуцирующего оператора op между всеми элементами, если коллекция непустая, и None в противном случае.

Definition Classes
GenTraversableOnce

abstract 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
GenTraversableOnce
Exceptions thrown

UnsupportedOperationException если эта коллекция или итератор пустые.

abstract def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]

Необязательно применяет бинарный оператор ко всем элементам этой коллекции или итератора, справа налево.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор является ассоциативным и коммутативным.

B

тип результата бинарного оператора.

op

бинарный оператор.

returns

значение типа Option, содержащее результат reduceRight(op) если эта коллекция или итератор непустые, None в противном случае.

Definition Classes
GenTraversableOnce

abstract def repr: Repr

Definition Classes
GenTraversableLike

abstract def reverse: Repr

Возвращает новую общую последовательность с элементами в обратном порядке.

Примечание: не будет завершаться для коллекций бесконечного размера.

returns

Новая общая последовательность со всеми элементами этой общей последовательности в обратном порядке.

abstract def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[Repr, B, That]): That

Вычисляет префиксный скан элементов коллекции.

Примечание: нейтральный элемент z может быть применён более одного раза.

B

тип элементов результирующей коллекции

That

тип результирующей коллекции

z

нейтральный элемент для оператора op

op

ассоциативный оператор для сканирования

cbf

фабрика комбайнера, которая предоставляет комбайнер

returns

новая общая коллекция, содержащая префиксный скан элементов в этой общей коллекции

Definition Classes
GenTraversableLike

abstract def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[Repr, B, That]): That

Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо.

Примечание: не завершится для коллекций бесконечного размера.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

B

тип элементов в результирующей коллекции

That

фактический тип результирующей коллекции

z

начальное значение

op

бинарный оператор, применяемый к промежуточному результату и элементу

bf

неявное значение класса CanBuildFrom, определяющее класс результата That из текущего типа представления Repr и нового типа элементов B.

returns

коллекция с промежуточными результатами

Definition Classes
GenTraversableLike

abstract def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[Repr, 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
GenTraversableLike
Annotations
@migration
Migration

(Изменено в версии 2.9.0) Поведение scanRight изменилось. Предыдущее поведение можно воспроизвести с помощью scanRight.reverse.

abstract def segmentLength(p: (A) ⇒ Boolean, from: Int): Int

Вычисляет длину самой длинной последовательности, элементы которой удовлетворяют некоторому предикату.

Примечание: может не завершиться для коллекций бесконечного размера.

p

предикат, используемый для проверки элементов.

from

индекс, с которого начинается поиск.

returns

длина самой длинной последовательности в этой обобщенной последовательности, начинающейся с индекса from, где каждый элемент удовлетворяет предикату p.

abstract def seq: Seq[A]

Definition Classes
GenSeqLike → Parallelizable → GenTraversableOnce

abstract def size: Int

Размер этой обобщенной коллекции.

Примечание: не завершится для коллекций бесконечного размера.

returns

количество элементов в этой обобщенной коллекции.

Definition Classes
GenTraversableLike → GenTraversableOnce

abstract def slice(unc_from: Int, unc_until: Int): Repr

Выбирает интервал элементов. Возвращаемая коллекция состоит из всех элементов x, которые удовлетворяют условию:

from <= indexOf(x) < until

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

unc_from

наименьший индекс для включения из этой обобщенной коллекции.

unc_until

наименьший индекс для исключения из этой обобщенной коллекции.

returns

обобщенная коллекция, содержащая элементы, большие или равные индексу from, и до (но не включая) индекса until этой обобщенной коллекции.

Definition Classes
GenTraversableLike

abstract def span(pred: (A) ⇒ Boolean): (Repr, Repr)

Разделяет эту обобщенную коллекцию на пару префикс/суффикс в соответствии с предикатом.

Примечание: c span p эквивалентно (но возможно более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

pred

предикат проверки

returns

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

Definition Classes
GenTraversableLike

abstract def splitAt(n: Int): (Repr, Repr)

Разделяет этот общий набор на два по заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно), чем (c take n, c drop n).

Примечание: может возвращать разные результаты при разных запусках, если только тип базового набора не упорядочен.

n

позиция, по которой нужно разделить.

returns

пара общих наборов, состоящая из первых n элементов этого общего набора и других элементов.

Definition Classes
GenTraversableLike

abstract def startsWith[B](that: GenSeq[B], offset: Int): Boolean

Проверяет, содержит ли этот общий последовательность заданную последовательность в заданном индексе.

Примечание: Если и объект-приёмник this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.

that

тестируемая последовательность

offset

индекс, в котором ищется последовательность.

returns

true если последовательность that содержится в этом общем наборе по индексу offset, иначе false.

abstract def stringPrefix: String

Определяет префикс представления этого объекта.

returns

строковое представление, которое начинается с результата toString, применённого к этому общему набору. По умолчанию строковый префикс — это простое имя класса коллекции общего набора.

Definition Classes
GenTraversableLike

abstract def tail: Repr

Выбирает все элементы, кроме первого.

Примечание: может возвращать разные результаты при разных запусках, если только тип базового набора не упорядочен.

returns

общий набор, состоящий из всех элементов этого общего набора, кроме первого.

Definition Classes
GenTraversableLike
Исключения

UnsupportedOperationException если общий набор пуст.

abstract def take(n: Int): Repr

Выбирает первые n элементов.

Примечание: может возвращать разные результаты при разных запусках, если только тип базового набора не упорядочен.

n

количество элементов для взятия из этого общего набора.

returns

общий набор, содержащий только первые n элементов этого общего набора, или же весь общий набор, если в нём меньше n элементов. Если n отрицательно, возвращает пустой общий набор.

Definition Classes
GenTraversableLike

abstract def takeWhile(pred: (A) ⇒ Boolean): Repr

Берет самую длинную префиксную часть элементов, удовлетворяющих предикату.

Примечание: может возвращать разные результаты при разных запусках, если только тип базового набора не упорядочен.

pred

предикат, используемый для проверки элементов.

returns

наиболее длинный префикс этого общего набора, все элементы которого удовлетворяют предикату p.

Definition Classes
GenTraversableLike

abstract def toBuffer[A1 >: A]: Buffer[A1]

Использует содержимое этого набора или итератора для создания нового изменяемого буфера.

Примечание: не завершится для бесконечных наборов.

returns

буфер, содержащий все элементы этого набора или итератора.

Definition Classes
GenTraversableOnce

abstract def toIndexedSeq: immutable.IndexedSeq[A]

Преобразует этот набор или итератор в индексированную последовательность.

Примечание: не завершится для бесконечных наборов.

returns

индексированная последовательность, содержащая все элементы этого набора или итератора.

Definition Classes
GenTraversableOnce

abstract def toIterable: GenIterable[A]

Преобразует этот набор или итератор в итерируемый набор. Обратите внимание, что выбор целевого Iterable ленив в этой реализации по умолчанию, так как этот TraversableOnce может быть ленивым и невычисленным (т. е. может быть итератором, который можно пройти только один раз).

Примечание: не завершится для бесконечных наборов.

returns

итерируемый набор, содержащий все элементы этого набора или итератора.

Definition Classes
GenTraversableOnce

abstract def toIterator: Iterator[A]

Возвращает итератор по элементам в этом наборе или итераторе. Вернёт тот же итератор, если этот экземпляр уже является итератором.

Примечание: не завершится для бесконечных наборов.

returns

итератор, содержащий все элементы этого набора или итератора.

Definition Classes
GenTraversableOnce

abstract def toList: List[A]

Преобразует эту коллекцию или итератор в список.

Примечание: не будет завершаться для коллекций бесконечного размера.

возвращает

список, содержащий все элементы этой коллекции или итератора.

Definition Classes
GenTraversableOnce

abstract def toSeq: GenSeq[A]

Преобразует эту общую последовательность в последовательность. Как и в toIterable, она ленивая в этом стандартном варианте реализации, так как эта TraversableOnce может быть ленивой и невычисленной.

Примечание: не будет завершаться для коллекций бесконечного размера.

возвращает

последовательность, содержащую все элементы этой общей последовательности.

Definition Classes
GenSeqLike → GenTraversableOnce

abstract def toSet[A1 >: A]: GenSet[A1]

Преобразует эту коллекцию или итератор в множество.

Примечание: не будет завершаться для коллекций бесконечного размера.

возвращает

множество, содержащее все элементы этой коллекции или итератора.

Definition Classes
GenTraversableOnce

abstract def toStream: Stream[A]

Преобразует эту коллекцию или итератор в поток.

возвращает

поток, содержащий все элементы этой коллекции или итератора.

Definition Classes
GenTraversableOnce

abstract def toTraversable: GenTraversable[A]

Преобразует эту коллекцию или итератор в неопределяемое обобщенное множество. Вернет ту же коллекцию, если этот экземпляр уже является обобщенным множеством.

Примечание: не будет завершаться для коллекций бесконечного размера.

возвращает

обобщенное множество, содержащее все элементы этой коллекции или итератора.

Definition Classes
GenTraversableOnce

abstract def toVector: Vector[A]

Преобразует эту коллекцию или итератор в вектор.

Примечание: не будет завершаться для коллекций бесконечного размера.

возвращает

вектор, содержащий все элементы этой коллекции или итератора.

Definition Classes
GenTraversableOnce

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

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

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

abstract def +:(elem: A): GenSeq[A]

[Пример использования]

Копия последовательности с добавленным элементом в начало.

Обратите внимание, что операторы с суффиксом :- являются правоассоциативными (см. пример). Мемоника для +: против :+ такова: двоеточие ставится со стороны коллекции.

Также исходная последовательность не изменяется, поэтому вам нужно будет сохранить результат.

Пример:

scala> val x = List(1)
x: List[Int] = List(1)

scala> val y = 2 +: x
y: List[Int] = List(2, 1)

scala> println(x)
List(1)
elem

элемент, добавляемый в начало

возвращает

новая последовательность, состоящая из elem и всех элементов этой последовательности.

Полная сигнатура

def ->[B](y: B): (GenSeqLike[A, Repr], B)

Неявный
Этот член добавляется с помощью неявного преобразования из GenSeqLike[A, Repr] в ArrowAssoc[GenSeqLike[A, Repr]] с помощью метода ArrowAssoc в scala.Predef.
Определяющие классы
ArrowAssoc
Аннотации
@inline()

abstract def :+(elem: A): GenSeq[A]

[Пример использования]

Копия этой последовательности с добавленным элементом в конец.

Мемоника для +: против :+ такова: двоеточие ставится со стороны коллекции.

Примечание: не завершится для коллекций бесконечного размера.

Пример:

scala> val a = List(1)
a: List[Int] = List(1)

scala> val b = a :+ 2
b: List[Int] = List(1, 2)

scala> println(a)
List(1)
elem

элемент, добавляемый в конец

возвращает

новая последовательность, состоящая из всех элементов этой последовательности, за которыми следует elem.

Полная сигнатура

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.

abstract def collect[B](pf: PartialFunction[A, B]): GenSeq[B]

[служебный случай]

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

B

тип элемента возвращаемой коллекции.

pf

частичная функция, которая фильтрует и отображает общую последовательность.

returns

новая общая последовательность, полученная в результате применения заданной частичной функции pf к каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.

Классы-определения
GenTraversableLike
Полная сигнатура

абстрактный def copyToArray(xs: Array[A], start: Int, len: Int): Unit

[служебный случай]

Копирует элементы этой общей последовательности в массив. Заполняет заданный массив xs максимум len элементами этой общей последовательности, начиная с позиции start. Копирование прекратится, как только будет достигнут конец текущей общей последовательности, конец целевого массива или будет скопировано len элементов.

Примечание: не завершится для коллекций бесконечного размера.

xs

массив для заполнения.

start

начальный индекс.

len

максимальное количество копируемых элементов.

Классы-определения
GenTraversableOnce
Полная сигнатура

абстрактный def copyToArray(xs: Array[A], start: Int): Unit

[служебный случай]

Копирует элементы этой общей последовательности в массив. Заполняет заданный массив xs значениями этой общей последовательности, начиная с индекса start. Копирование прекратится, как только будет достигнут конец текущей общей последовательности или конец целевого массива.

Примечание: не завершится для коллекций бесконечного размера.

xs

массив для заполнения.

start

начальный индекс.

Классы-определения
GenTraversableOnce
Полная сигнатура

абстрактный def copyToArray(xs: Array[A]): Unit

[служебный случай]

Копирует элементы этой общей последовательности в массив. Заполняет заданный массив xs значениями этой общей последовательности. Копирование прекратится, как только будет достигнут конец текущей общей последовательности или конец целевого массива.

Примечание: не завершится для коллекций бесконечного размера.

xs

массив для заполнения.

Классы-определения
GenTraversableOnce
Полная сигнатура

абстрактный def diff(that: GenSeq[A]): GenSeq[A]

[служебный случай]

Вычисляет разность множеств между этой общей последовательностью и другой последовательностью.

Примечание: не завершится для коллекций бесконечного размера.

that

последовательность элементов для удаления

returns

новая общая последовательность, которая содержит все элементы этой общей последовательности, за исключением некоторых вхождений элементов, которые также появляются в that. Если значение элемента x появляется n раз в that, то первые n вхождений x не будут частью результата, но любые последующие вхождения будут.

Полная сигнатура

def ensuring(cond: (GenSeqLike[A, Repr]) ⇒ Boolean, msg: ⇒ Any): GenSeqLike[A, Repr]

Неявный
Этот член добавлен с помощью неявного преобразования из GenSeqLike[A, Repr] в Ensuring[GenSeqLike[A, Repr]] с помощью метода Ensuring в scala.Predef.
Классы-определения
Ensuring

def ensuring(cond: (GenSeqLike[A, Repr]) ⇒ Boolean): GenSeqLike[A, Repr]

Неявный
Этот член добавлен с помощью неявного преобразования из GenSeqLike[A, Repr] в Ensuring[GenSeqLike[A, Repr]] с помощью метода Ensuring в scala.Predef.
Классы-определения
Ensuring

def ensuring(cond: Boolean, msg: ⇒ Any): GenSeqLike[A, Repr]

Неявный
Этот член добавлен неявным преобразованием из GenSeqLike[A, Repr] в Ensuring[GenSeqLike[A, Repr]] выполненным методом Ensuring в scala.Predef.
Классы определений
Ensuring

def ensuring(cond: Boolean): GenSeqLike[A, Repr]

Неявный
Этот член добавлен неявным преобразованием из GenSeqLike[A, Repr] в Ensuring[GenSeqLike[A, Repr]] выполненным методом Ensuring в scala.Predef.
Классы определений
Ensuring

def equals(that: Any): Boolean

Метод equals для произвольных последовательностей. Сравнивает эту последовательность с другим объектом.

that

Объект, с которым сравнивается последовательность

возвращает

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

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

abstract def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): GenSeq[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

функция, которая применяется к каждому элементу.

возвращает

новая обобщенная последовательность, полученная путем применения заданной функции, принимающей коллекцию f к каждому элементу этой обобщенной последовательности и конкатенации результатов.

Классы определений
GenTraversableLike
Полная подпись

abstract def foreach(f: (A) ⇒ Unit): Unit

[Пример использования]

Применяет функцию f ко всем элементам этой обобщенной последовательности.

Примечание: этот метод лежит в основе реализации большинства других операций пакетной обработки. Важно реализовать этот метод эффективным способом.

f

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

Классы определений
GenTraversableLike → GenTraversableOnce
Полная подпись

def formatted(fmtstr: String): String

Возвращает строку, отформатированную в соответствии с данной format строкой. Строки форматирования такие же, как для String.format (@см. java.lang.String.format).

Неявный
Этот член добавлен неявным преобразованием из GenSeqLike[A, Repr] в StringFormat[GenSeqLike[A, Repr]] выполненным методом StringFormat в scala.Predef.
Классы определений
StringFormat
Аннотации
@inline()

def hashCode(): Int

Хешкоды для GenSeq производят значение из хешкодов всех элементов обобщенной последовательности.

возвращает

значение хешкода для этого объекта.

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

def indexOf(elem: A, from: Int): Int

[Пример использования]

Находит индекс первого вхождения некоторого значения в этой обобщенной последовательности после или в некотором начальном индексе.

Примечание: может не завершаться для коллекций бесконечного размера.

elem

значение элемента, для поиска.

from

начальный индекс

возвращает

индекс >= from первого элемента этой обобщенной последовательности, который равен (как определяется ==) elem, или -1, если такового нет.

Полная подпись

def indexOf(elem: A): Int

[use case]

Находит индекс первого вхождения некоторого значения в этой общей последовательности.

Примечание: может не завершаться для коллекций бесконечного размера.

elem

значение искомого элемента.

возвращает

индекс первого элемента этой общей последовательности, который равен (как определяется ==) elem, или -1, если такового нет.

Полная сигнатура

def indexWhere(p: (A) ⇒ Boolean): Int

Находит индекс первого элемента, удовлетворяющего некоторому предикату.

Примечание: может не завершаться для коллекций бесконечного размера.

p

предикат, используемый для проверки элементов.

возвращает

индекс первого элемента этой общей последовательности, удовлетворяющего предикату p, или -1, если такового нет.

abstract def intersect(that: GenSeq[A]): GenSeq[A]

[use case]

Вычисляет пересечение мультимножеств между этой общей последовательностью и другой последовательностью.

Примечание: может не завершаться для коллекций бесконечного размера.

that

последовательность элементов для пересечения.

возвращает

новая общая последовательность, которая содержит все элементы этой общей последовательности, которые также присутствуют в that. Если значение элемента x встречается n раз в that, то первые n вхождений x будут сохранены в результате, но любые последующие вхождения будут пропущены.

Полная сигнатура

def isDefinedAt(idx: Int): Boolean

Проверяет, содержит ли эта общая последовательность данный индекс.

Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].

idx

индекс для проверки

возвращает

true если эта общая последовательность содержит элемент в позиции idx, false в противном случае.

final def isInstanceOf[T0]: Boolean

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

Обратите внимание, что результат теста зависит от стирания семантики Scala. Следовательно, выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, так как тип аргумента стирается во время компиляции, нельзя проверить, относятся ли содержимое списка к указанному типу.

возвращает

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

Definition Classes
Any

def lastIndexOf(elem: A, end: Int): Int

[use case]

Находит индекс последнего вхождения некоторого значения в этой общей последовательности перед или на заданном индексе конца.

elem

значение искомого элемента.

end

индекс конца.

возвращает

индекс <= end последнего элемента этой общей последовательности, который равен (как определяется ==) elem, или -1, если такового нет.

Полная сигнатура

def lastIndexOf(elem: A): Int

[use case]

Находит индекс последнего вхождения некоторого значения в этой общей последовательности.

Примечание: не будет завершаться для коллекций бесконечного размера.

elem

значение искомого элемента.

возвращает

индекс последнего элемента этой общей последовательности, который равен (как определяется ==) elem, или -1, если такового нет.

Полная сигнатура

def lastIndexWhere(p: (A) ⇒ Boolean): Int

Находит индекс последнего элемента, удовлетворяющего некоторому предикату.

Примечание: не будет завершаться для коллекций бесконечного размера.

p

предикат, используемый для проверки элементов.

возвращает

индекс последнего элемента этой общей последовательности, удовлетворяющего предикату p, или -1, если такового нет.

abstract def map[B](f: (A) ⇒ B): GenSeq[B]

[use case]

Строит новую коллекцию, применяя функцию ко всем элементам этой общей последовательности.

B

тип элементов возвращаемой коллекции.

f

функция, применяемая к каждому элементу.

возвращает

новая общая последовательность, полученная в результате применения заданной функции f к каждому элементу этой общей последовательности и сбора результатов.

Definition Classes
GenTraversableLike
Полная сигнатура

abstract def max: A

[use case]

Находит наибольший элемент.

возвращает

наибольший элемент этой общей последовательности.

Definition Classes
GenTraversableOnce
Полная сигнатура
Исключения

UnsupportedOperationException если эта общая последовательность пустая.

abstract def maxBy[B](f: (A) ⇒ B): A

[use case]

Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.

B

Тип результата функции f.

f

Функция измерения.

returns

первый элемент этого общего набора со значением максимальным, измеренным функцией f.

Definition Classes
GenTraversableOnce
Полная подпись
Исключения

UnsupportedOperationException, если этот общий набор пуст.

abstract def min: A

[use case]

Находит наименьший элемент.

returns

наименьший элемент этого общего набора

Definition Classes
GenTraversableOnce
Полная подпись
Исключения

UnsupportedOperationException, если этот общий набор пуст.

abstract def minBy[B](f: (A) ⇒ B): A

[use case]

Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.

B

Тип результата функции f.

f

Функция измерения.

returns

первый элемент этого общего набора с наименьшим значением, измеренным функцией f.

Definition Classes
GenTraversableOnce
Полная подпись
Исключения

UnsupportedOperationException, если этот общий набор пуст.

abstract def padTo(len: Int, elem: A): GenSeq[A]

[use case]

Копия этого общего набора с добавленным элементом до тех пор, пока не будет достигнута заданная целевая длина.

len

целевая длина

elem

значение дополнения

returns

новый общий набор, состоящий из всех элементов этого общего набора, за которым следует минимальное количество вхождений elem, так что полученный общий набор имеет длину как минимум len.

Полная подпись

def par: ParSeq[A]

Возвращает параллельную реализацию этого набора.

Для большинства типов наборов этот метод создаёт новый параллельный набор, копируя все элементы. Для этих наборов par занимает линейное время. Изменяемые наборы в этой категории не производят изменяемый параллельный набор, который имеет тот же базовый набор данных, поэтому изменения в одном наборе не будут отражаться в другом.

Специфические наборы (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельный набор, который использует тот же базовый набор данных. Для этих наборов par занимает постоянное или сублинейное время.

Все параллельные наборы возвращают ссылку на себя.

returns

параллельная реализация этого набора

Definition Classes
Parallelizable

abstract def patch(from: Int, that: GenSeq[A], replaced: Int): GenSeq[A]

[use case]

Создаёт новый общий набор, где фрагмент элементов в этом общем наборе заменяется другим набором.

from

индекс первого заменённого элемента

replaced

количество элементов для удаления в исходном общем наборе

returns

новый общий набор, состоящий из всех элементов этого общего набора, за исключением того, что replaced элементы, начиная с from, заменяются на patch.

Полная подпись

def prefixLength(p: (A) ⇒ Boolean): Int

Возвращает длину самого длинного префикса, элементы которого удовлетворяют некоторому предикату.

Примечание: может не завершаться для бесконечных наборов.

p

предикат, используемый для проверки элементов.

returns

длина самого длинного префикса этого общего набора, при котором каждый элемент сегмента удовлетворяет предикату p.

abstract def product: A

[use case]

Перемножает элементы этого набора.

returns

произведение всех элементов в этом общем наборе чисел типа Int. Вместо Int, может быть использован любой другой тип T с неявной Numeric[T] реализацией, который может быть использован как тип элемента общего набора и как тип результата product. Примеры таких типов: Long, Float, Double, BigInt.

Definition Classes
GenTraversableOnce
Полная подпись

abstract def reverseMap[B](f: (A) ⇒ B): GenSeq[B]

[use case]

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

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: xs.reverseMap(f) то же самое, что и xs.reverse.map(f), но может быть более эффективным.

B

тип элемента возвращаемой коллекции.

f

функция, применяемая к каждому элементу.

returns

новая общая последовательность, полученная путем применения заданной функции f к каждому элементу этой общей последовательности и сбора результатов в обратном порядке.

Полная сигнатура

abstract def sameElements(that: GenIterable[A]): Boolean

[use case]

Проверяет, содержит ли другая итерируемая коллекция те же элементы в том же порядке, что и эта общая последовательность.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

Примечание: не будет завершаться для коллекций бесконечного размера.

that

коллекция для сравнения.

returns

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

Definition Classes
GenIterableLike
Полная сигнатура

def sizeHintIfCheap: Int

Размер этой коллекции или итератора, если его можно вычислить недорого

returns

число элементов в этой коллекции или итераторе, или -1, если размер нельзя определить недорого

Attributes
protected[collection]
Definition Classes
GenTraversableOnce

def startsWith[B](that: GenSeq[B]): Boolean

Проверяет, начинается ли эта общая последовательность с данной последовательности.

that

тестируемая последовательность

returns

true если эта коллекция имеет that в качестве префикса, false в противном случае.

abstract def sum: A

[use case]

Суммирует элементы этой коллекции.

returns

сумма всех элементов в этой общей числовой последовательности типа Int. Вместо Int, любой другой тип T с неявным Numeric[T] реализацией может быть использован в качестве типа элемента общей последовательности и как тип результата sum. Примеры таких типов: Long, Float, Double, BigInt.

Definition Classes
GenTraversableOnce
Полная сигнатура

abstract def to[Col[_]]: Col[A]

[use case]

Преобразует эту общую последовательность в другую, копируя все элементы.

Примечание: не будет завершаться для коллекций бесконечного размера.

Col

тип коллекции для построения.

returns

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

Definition Classes
GenTraversableOnce
Полная сигнатура

abstract def toArray: Array[A]

[use case]

Преобразует эту общую последовательность в массив.

Примечание: не будет завершаться для коллекций бесконечного размера.

returns

массив, содержащий все элементы этой общей последовательности. Должна быть доступна ClassTag для типа элемента этой общей последовательности.

Definition Classes
GenTraversableOnce
Полная сигнатура

abstract def toMap[T, U]: Map[T, U]

[use case]

Преобразует эту общую последовательность в карту. Этот метод недоступен, если элементы не являются членами Tuple2, каждая ((T, U)) становится парой ключ-значение в карте. Повторные ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, какой ключ находится в результирующей карте, не определено.

Примечание: не будет завершаться для коллекций бесконечного размера.

returns

карта типа immutable.Map[T, U] содержащая все пары ключ/значение типа (T, U) этой общей последовательности.

Definition Classes
GenTraversableOnce
Полная сигнатура

def toParArray: ParArray[T]

Implicit
Этот член добавлен неявным преобразованием из GenSeqLike[A, Repr] в CollectionsHaveToParArray[GenSeqLike[A, Repr], T] выполненным методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование произойдет только если неявное значение типа (GenSeqLike[A, Repr]) ⇒ GenTraversableOnce[T] находится в области видимости.
Definition Classes
CollectionsHaveToParArray

def toString(): String

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

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

возвращает

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

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

def union(that: GenSeq[A]): GenSeq[A]

[использование]

Создаёт новую последовательность, содержащую все элементы этой общей последовательности и все элементы заданной последовательности. xs union ys эквивалентно xs ++ ys.

Другой способ выразить это - xs union ys вычисляет сохраняющую порядок множественную сумму объединения xs и ys. union является, следовательно, аналогом diff и intersect, которые также работают с множествами.

Примечание: не завершится для коллекций бесконечного размера.

that

последовательность для добавления.

возвращает

новую общую последовательность, содержащую все элементы этой общей последовательности, за которыми следуют все элементы that.

Полная сигнатура

абстрактный def updated(index: Int, elem: A): GenSeq[A]

[использование]

Копия этой общей последовательности с одним единственным заменённым элементом.

index

позиция замены

elem

элемент замены

возвращает

копию этой общей последовательности с элементом в позиции index заменённым на elem.

Полная сигнатура

абстрактный def zip[B](that: GenIterable[B]): GenSeq[(A, B)]

[использование]

Возвращает общую последовательность, образованную из этой общей последовательности и другой итерируемой коллекции, объединяя соответствующие элементы парами. Если одна из двух коллекций длиннее другой, оставшиеся элементы игнорируются.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

B

тип второй половины возвращаемых пар

that

итерируемый объект, предоставляющий вторую половину каждой пары результата

возвращает

новая общая последовательность, содержащая пары, состоящие из соответствующих элементов этой общей последовательности и that. Длина возвращаемой коллекции - это минимум из длин этой общей последовательности и that.

Определяющие классы
GenIterableLike
Полная сигнатура

абстрактный def zipAll[B](that: Iterable[B], thisElem: A, thatElem: B): GenSeq[(A, B)]

[использование]

Возвращает общую последовательность, образованную из этой общей последовательности и другой итерируемой коллекции, объединяя соответствующие элементы парами. Если одна из двух коллекций короче другой, используются заполняющие элементы для расширения более короткой коллекции до длины более длинной.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

B

тип второй половины возвращаемых пар

that

итерируемый объект, предоставляющий вторую половину каждой пары результата

thisElem

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

thatElem

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

возвращает

новая общая последовательность, содержащая пары, состоящие из соответствующих элементов этой общей последовательности и that. Длина возвращаемой коллекции - это максимум из длин этой общей последовательности и that. Если эта общая последовательность короче that, значения thisElem используются для дополнения результата. Если that короче этой общей последовательности, значения thatElem используются для дополнения результата.

Определяющие классы
GenIterableLike
Полная сигнатура

абстрактный def zipWithIndex: GenSeq[(A, Int)]

[использование]

Объединяет эту общую последовательность с её индексами.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

возвращает

новая общая последовательность, содержащая пары, состоящие из всех элементов этой общей последовательности, соединённых с их индексом. Индексы начинаются с 0.

Определяющие классы
GenIterableLike
Полная сигнатура
Пример:

    List("a", "b", "c").zipWithIndex = List(("a", 0), ("b", 1), ("c", 2))

def →[B](y: B): (GenSeqLike[A, Repr], B)

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

Spec-Zone.ru

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