Spec-Zone.ru › Scala 2.12 Library

Трейт scala.collection.SeqViewLike

trait SeqViewLike[+A, +Coll, +This <: SeqView[A, Coll] with SeqViewLike[A, Coll, This]] extends Seq[A] with SeqLike[A, This] with IterableView[A, Coll] with IterableViewLike[A, Coll, This]

Шаблонный трейт для ленивых представлений последовательностей.

Представление — это ленивая версия некоторой коллекции. Трансформаторы коллекций, такие как map или filter или ++, не обходят элементы при применении к представлению. Вместо этого они создают новое представление, просто записывая тот факт, что операция должна быть применена. Элементы коллекции и операции представления применяются, когда требуется результат, не являющийся представлением, или когда вызывается метод force на представлении. Все представления последовательностей определяются заново с использованием методов length и apply.

Self Type
SeqViewLike[A, Coll, This]
Source
SeqViewLike.scala
Linear Supertypes
Known Subclasses

Элементы типа

интерфейс Appended[B >: A] extends SeqViewLike.Appended[B] with Transformed[B]

интерфейс DroppedWhile extends SeqViewLike.DroppedWhile with Transformed[A]

интерфейс EmptyView extends Transformed[Nothing] with SeqViewLike.EmptyView

интерфейс Filtered extends SeqViewLike.Filtered with Transformed[A]

интерфейс FlatMapped[B] extends SeqViewLike.FlatMapped[B] with Transformed[B]

интерфейс Forced[B] extends SeqViewLike.Forced[B] with Transformed[B]

интерфейс Mapped[B] extends SeqViewLike.Mapped[B] with Transformed[B]

интерфейс Patched[B >: A] extends Transformed[B]

интерфейс Prepended[B >: A] extends SeqViewLike.Prepended[B] with Transformed[B]

интерфейс Reversed extends Transformed[A]

тип Self = This

Тип, реализующий этот обход

Атрибуты
protected[this]
Классы-определения
TraversableLike

интерфейс Sliced extends SeqViewLike.Sliced with Transformed[A]

интерфейс TakenWhile extends SeqViewLike.TakenWhile with Transformed[A]

интерфейс Transformed[+B] extends SeqView[B, Coll] with SeqViewLike.Transformed[B]

интерфейс Zipped[B] extends SeqViewLike.Zipped[B] with Transformed[(A, B)]

интерфейс ZippedAll[A1 >: A, B] extends SeqViewLike.ZippedAll[A1, B] with Transformed[(A1, B)]

класс WithFilter extends FilterMonadic[A, Repr]

Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.

Классы-определения
TraversableLike

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

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 указывает на первый элемент.

Definition Classes
SeqLike → GenSeqLike
Исключения

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

abstract def iterator: Iterator[A]

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

returns

новый итератор

Definition Classes
IterableLike → GenIterableLike

abstract def length: Int

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

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

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

returns

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

Definition Classes
SeqLike → GenSeqLike
Исключения

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

abstract def underlying: Coll

Атрибуты
protected
Definition Classes
TraversableViewLike

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

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

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

def ++[B >: A, That](xs: GenTraversableOnce[B])(implicit bf: CanBuildFrom[This, B, That]): That

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

B

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

That

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

bf

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike

def ++:[B >: A, That](xs: Traversable[B])(implicit bf: CanBuildFrom[This, 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].

bf

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike

def ++:[B](that: TraversableOnce[B]): Seq[B]

[use case]

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

Отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мнемоника: двоеточие стоит со стороны нового типа коллекции.

Пример:

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

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike
Полная сигнатура

def +:(elem: A): Seq[A]

[use case]

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

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

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

Пример:

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

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike
Полная сигнатура

def ->[B](y: B): (SeqViewLike[A, Coll, This], B)

Неявный
Этот член добавляется неявным преобразованием из SeqViewLike[A, Coll, This] в ArrowAssoc[SeqViewLike[A, Coll, This]] с помощью метода ArrowAssoc в scala.Predef.
Definition Classes
ArrowAssoc
Аннотации
@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
TraversableOnce → GenTraversableOnce

def :+(elem: A): Seq[A]

[use case]

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

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

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

Пример:

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

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike
Полная сигнатура

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
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: StringBuilder, start: String, sep: String, end: String): StringBuilder

Definition Classes
ViewMkString

def addString(b: StringBuilder): 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 , к которому были добавлены элементы.

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

def addString(b: StringBuilder, sep: String): 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 , к которому были добавлены элементы.

Определяющие классы
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 преобразует каждый входной символ в Int и добавляет его к сумме (раздела). Затем combop просто нужно суммировать промежуточные результаты разделов:

List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
B

тип накопленных результатов

z

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

seqop

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

combop

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

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

def andThen[C](k: (A) ⇒ C): PartialFunction[Int, C]

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

C

тип результата функции преобразования.

k

функция преобразования

returns

частичная функция с той же областью определения, что и эта частичная функция, которая отображает аргументы x на k(this(x)).

Определяющие классы
PartialFunction → Function1

def applyOrElse[A1 <: Int, B1 >: A](x: A1, default: (A1) ⇒ B1): B1

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

Обратите внимание, что выражение pf.applyOrElse(x, default) эквивалентно

if(pf isDefinedAt x) pf(x) else default(x)

за исключением того, что метод applyOrElse может быть реализован более эффективно. Для всех литералов частичных функций компилятор генерирует реализацию applyOrElse, которая избегает двойной оценки согласующих шаблонов и охранников. Это делает applyOrElse основой для эффективной реализации многих операций и сценариев, таких как:

    объединение частичных функций в цепочки orElse/andThen не приводит к чрезмерной оценке apply/isDefinedAt lift и unlift не оценивают исходные функции дважды при каждом вызове runWith позволяет эффективно комбинировать частичные функции в императивном стиле с условно применяемыми действиями

Для нелитеральных классов частичных функций с нетривиальным методом isDefinedAt рекомендуется переопределить applyOrElse с помощью пользовательской реализации, которая избегает двойной оценки isDefinedAt. Это может привести к лучшей производительности и более предсказуемому поведению в отношении побочных эффектов.

x

аргумент функции

default

резервная функция

returns

результат применения этой функции или резервной функции.

Определяющие классы
PartialFunction
С версии

2.10

final def asInstanceOf[T0]: T0

Преобразовать объект-получатель в тип T0.

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

returns

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

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

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

def canEqual(that: Any): Boolean

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

that

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

returns

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

Definition Classes
IterableLike → Equals

def clone(): AnyRef

Создаёт копию объекта-получателя.

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

returns

копию объекта-получателя.

Attributes
protected[lang]
Definition Classes
AnyRef
Annotations
@throws( ... ) @native()
Примечание

не определён SLS как член AnyRef

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

[use case]

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

B

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

pf

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

returns

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

Definition Classes
TraversableViewLike → 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 combinations(n: Int): Iterator[This]

Итерация по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке. Таким образом, "xy" и "yy" являются комбинациями длины 2 для "xyy", но "yx" — нет. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращён только один.

Например, "xyyy" имеет три разных способа сгенерировать "xy" в зависимости от того, какой элемент — первый, второй или третий "y" был выбран. Однако, так как все они идентичны, будет выбран только один. Какой из трёх будет выбран — реализация детали, которая не определена.

returns

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

Definition Classes
SeqViewLike → SeqLike
Пример:

    "abbbc".combinations(2) = Iterator(ab, ac, bb, bc)

def companion: GenericCompanion[Seq]

Фабричный объект-компаньон, создающий экземпляры класса Seq. (или его Iterable суперкласса, где класс Seq не является Seq.)

Definition Classes
Seq → GenSeq → Iterable → GenIterable → Traversable → GenTraversable → GenericTraversableTemplate

def compose[A](g: (A) ⇒ Int): (A) ⇒ A

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

A

тип, к которому можно применить функцию g

g

функция A => T1

returns

новая функция f такая, что f(x) == apply(g(x))

Definition Classes
Function1
Annotations
@unspecialized()

def contains[A1 >: A](elem: A1): Boolean

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

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

elem

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

returns

true если эта последовательность имеет элемент, равный (как определено ==) elem, false в противном случае.

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

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

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

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

that

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

returns

true если эта последовательность содержит срез с теми же элементами, что и that, в противном случае false.

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

def copyToArray(xs: Array[A], start: Int, len: Int): Unit

[use case]

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

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

xs

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

start

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

len

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

Определяющие классы
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
Полная сигнатура

def copyToArray(xs: Array[A]): Unit

[use case]

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

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

xs

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

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

def copyToArray(xs: Array[A], start: Int): Unit

[use case]

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

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

xs

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

start

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

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

def copyToBuffer[B >: A](dest: Buffer[B]): Unit

Копирует все элементы этого обхода или итератора в буфер.

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

dest

Буфер, в который копируются элементы.

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

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.

Определяющие классы
SeqLike → GenSeqLike

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

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

p

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

returns

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

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

def diff(that: Seq[A]): Seq[A]

[use case]

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

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

that

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike
Полная сигнатура

def distinct: This

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

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike

def drop(n: Int): This

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

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

n

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

returns

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

Definition Classes
IterableViewLike → TraversableViewLike → IterableLike → TraversableLike → GenTraversableLike

def dropRight(n: Int): This

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

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

n

Количество элементов для взятия

returns

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

Definition Classes
IterableViewLike → IterableLike

def dropWhile(p: (A) ⇒ Boolean): This

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

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike

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

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

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

that

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

returns

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

Definition Classes
SeqLike → GenSeqLike

def ensuring(cond: (SeqViewLike[A, Coll, This]) ⇒ Boolean, msg: ⇒ Any): SeqViewLike[A, Coll, This]

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

def ensuring(cond: (SeqViewLike[A, Coll, This]) ⇒ Boolean): SeqViewLike[A, Coll, This]

Неявный
Этот член добавлен неявным преобразованием из SeqViewLike[A, Coll, This] в Ensuring[SeqViewLike[A, Coll, This]] выполненным методом Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean, msg: ⇒ Any): SeqViewLike[A, Coll, This]

Неявный
Этот член добавлен неявным преобразованием из SeqViewLike[A, Coll, This] в Ensuring[SeqViewLike[A, Coll, This]] выполненным методом Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean): SeqViewLike[A, Coll, This]

Неявный
Этот член добавлен неявным преобразованием из SeqViewLike[A, Coll, This] в Ensuring[SeqViewLike[A, Coll, This]] выполненным методом Ensuring в scala.Predef.
Определяющие классы
Ensuring

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).

Метод eq реализует отношение эквивалентности на непустых экземплярах AnyRef, и имеет три дополнительных свойства:

    Он согласован: для любых непустых экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого непустого экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false. null.eq(null) возвращает true.

При переопределении методов equals или hashCode важно обеспечить согласованность их поведения с равенством ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны хешироваться к одному значению (o1.hashCode == o2.hashCode).

возвращает

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

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

def equals(that: Any): Boolean

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

that

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

возвращает

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

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

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

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

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

p

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

возвращает

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

Определяющие классы
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

def filter(p: (A) ⇒ Boolean): This

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

p

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

возвращает

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

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

def filterNot(p: (A) ⇒ Boolean): This

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

p

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

returns

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

Definition Classes
TraversableViewLike → 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
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Seq[B]

[use case]

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

Например:

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
TraversableViewLike → TraversableLike → GenTraversableLike → FilterMonadic
Полная подпись

def flatten[B]: Seq[B]

[use case]

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

Тип результирующего набора будет определён статическим типом последовательности. Например:

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
TraversableViewLike → 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
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
IterableLike → TraversableOnce → GenTraversableOnce

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

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

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

p

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

returns

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

Definition Classes
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

def force[B >: A, That](implicit bf: CanBuildFrom[Coll, B, That]): That

Definition Classes
TraversableViewLike

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

[use case]

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

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

f

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

Definition Classes
IterableLike → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
Полная сигнатура

def formatted(fmtstr: String): String

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

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

def genericBuilder[B]: Builder[B, Seq[B]]

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

Definition Classes
GenericTraversableTemplate

final def getClass(): Class[_]

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

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

def groupBy[K](f: (A) ⇒ K): immutable.Map[K, This]

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

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

K

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

f

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

returns

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

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

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike

def grouped(size: Int): Iterator[This]

Разделяет элементы на итерируемые наборы фиксированного размера.

size

количество элементов в группе

returns

Итератор, создающий итерируемые наборы размера size, за исключением последнего, который будет меньше size size, если элементы не делятся на size без остатка.

Definition Classes
IterableViewLike → IterableLike
См. также

scala.collection.Iterator, метод grouped

def hasDefiniteSize: Boolean

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

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

returns

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

Definition Classes
TraversableLike → TraversableOnce → GenTraversableOnce

def hashCode(): Int

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

returns

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

Definition Classes
GenSeqLike → Any

def head: A

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

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

returns

первый элемент этого итерируемого набора.

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

NoSuchElementException если итерируемый набор пуст.

def headOption: Option[A]

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

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

returns

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

Definition Classes
TraversableLike → GenTraversableLike

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

[use case]

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

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

elem

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

from

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

returns

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

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

def indexOf(elem: A): Int

[use case]

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

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

elem

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

returns

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

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

def indexOfSlice[B >: A](that: GenSeq[B], from: Int): Int

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

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

that

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

from

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

returns

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

Definition Classes
SeqLike

def indexOfSlice[B >: A](that: GenSeq[B]): Int

Находит первый индекс, где эта последовательность содержит заданную последовательность в качестве слайса.

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

that

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

returns

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

Definition Classes
SeqLike

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

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

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

p

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

from

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

returns

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

Definition Classes
SeqLike → GenSeqLike

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

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

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

p

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

returns

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

Definition Classes
GenSeqLike

def indices: immutable.Range

Создаёт диапазон всех индексов этой последовательности.

returns

значение Range от 0 до значения на единицу меньше длины этой последовательности.

Definition Classes
SeqLike

def init: This

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

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike
Exceptions thrown

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

def inits: Iterator[This]

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike
Пример:

    List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)

def intersect(that: Seq[A]): Seq[A]

[use case]

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

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

that

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike
Полная подпись

def isDefinedAt(idx: Int): Boolean

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

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

idx

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

returns

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

Definition Classes
GenSeqLike

def isEmpty: Boolean

Проверяет, пуста ли эта последовательность.

returns

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

Definition Classes
SeqLike → IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

final def isInstanceOf[T0]: Boolean

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

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

возвращает

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

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

final def isTraversableAgain: Boolean

Проверяет, можно ли многократно пройти по этому итерируемому набору.

возвращает

true

Классы-определения
TraversableLike → GenTraversableLike → GenTraversableOnce

def last: A

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

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

возвращает

Последний элемент этого итерируемого набора.

Классы-определения
TraversableLike → GenTraversableLike
Исключения

NoSuchElementException Если итерируемый набор пуст.

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

[use case]

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

elem

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

end

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

возвращает

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

Классы-определения
GenSeqLike
Полная подпись

def lastIndexOf(elem: A): Int

[use case]

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

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

elem

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

возвращает

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

Классы-определения
GenSeqLike
Полная подпись

def lastIndexOfSlice[B >: A](that: GenSeq[B], end: Int): Int

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

that

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

end

конечный индекс

возвращает

последний индекс <= end такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1, если такой подпоследовательности нет.

Классы-определения
SeqLike

def lastIndexOfSlice[B >: A](that: GenSeq[B]): Int

Находит последний индекс, где эта последовательность содержит заданную последовательность как срез.

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

that

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

возвращает

последний индекс такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1, если такой подпоследовательности нет.

Классы-определения
SeqLike

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

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

p

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

возвращает

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

Классы-определения
SeqLike → GenSeqLike

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

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

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

p

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

возвращает

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

Классы-определения
GenSeqLike

def lastOption: Option[A]

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

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

возвращает

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

Классы-определения
TraversableLike → GenTraversableLike

def lengthCompare(len: Int): Int

Сравнивает длину этой последовательности со значением теста.

len

тестовое значение, которое сравнивается с длиной.

returns

Значение x, где

x <  0       if this.length <  len
x == 0       if this.length == len
x >  0       if this.length >  len

Реализация метода здесь не вызывает length напрямую; его время выполнения составляет O(length min len) вместо O(length). Метод следует переопределять, если вычисление length является быстрым.

Definition Classes
SeqLike

def lift: (Int) ⇒ Option[A]

Преобразует эту частичную функцию в обычную функцию, возвращающую Option результат.

returns

функция, которая принимает аргумент x к Some(this(x)), если this определена для x, и к None в противном случае.

Definition Classes
PartialFunction
See also

Function.unlift

def map[B](f: (A) ⇒ B): Seq[B]

[use case]

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

B

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

f

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike → FilterMonadic
Полная подпись

def max: A

[use case]

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

returns

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

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

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

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

[use case]

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

B

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

f

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

returns

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

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

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

def min: A

[use case]

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

returns

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

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

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

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

[use case]

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

B

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

f

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

returns

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

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

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

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

Definition Classes
ViewMkString

def mkString(sep: String): String

Definition Classes
ViewMkString

def mkString: String

Definition Classes
ViewMkString

final def ne(arg0: AnyRef): Boolean

Эквивалентно !(this eq that).

returns

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

Definition Classes
AnyRef

def newAppended[B >: A](that: GenTraversable[B]): Transformed[B]

Attributes
protected
Definition Classes
SeqViewLike → IterableViewLike → TraversableViewLike

def newBuilder: Builder[A, This]

Построитель, создающий экземпляры типа Traversable[A]

Attributes
protected[this]
Definition Classes
TraversableViewLike → GenericTraversableTemplate → TraversableLike → HasNewBuilder

def newDropped(n: Int): Transformed[A]

Attributes
protected
Definition Classes
SeqViewLike → IterableViewLike → TraversableViewLike

def newDroppedWhile(p: (A) ⇒ Boolean): Transformed[A]

Attributes
protected
Definition Classes
SeqViewLike → IterableViewLike → TraversableViewLike

def newFiltered(p: (A) ⇒ Boolean): Transformed[A]

Attributes
protected
Definition Classes
SeqViewLike → IterableViewLike → TraversableViewLike

def newFlatMapped[B](f: (A) ⇒ GenTraversableOnce[B]): Transformed[B]

Attributes
protected
Definition Classes
SeqViewLike → IterableViewLike → TraversableViewLike

def newForced[B](xs: ⇒ GenSeq[B]): Transformed[B]

Метод-шаблон, для переопределения в каждом подклассе. Этот метод можно было бы убрать, если бы в Scala были виртуальные классы

Attributes
protected
Definition Classes
SeqViewLike → IterableViewLike → TraversableViewLike

def newMapped[B](f: (A) ⇒ B): Transformed[B]

Attributes
protected
Definition Classes
SeqViewLike → IterableViewLike → TraversableViewLike

def newPatched[B >: A](_from: Int, _patch: GenSeq[B], _replaced: Int): Transformed[B]

Attributes
protected

def newPrepended[B >: A](that: GenTraversable[B]): Transformed[B]

Атрибуты
protected
Классы-определения
SeqViewLike → IterableViewLike → TraversableViewLike

def newReversed: Transformed[A]

Атрибуты
protected

def newSliced(_endpoints: SliceInterval): Transformed[A]

Атрибуты
protected
Классы-определения
SeqViewLike → IterableViewLike → TraversableViewLike

def newTaken(n: Int): Transformed[A]

Атрибуты
protected
Классы-определения
SeqViewLike → IterableViewLike → TraversableViewLike

def newTakenWhile(p: (A) ⇒ Boolean): Transformed[A]

Атрибуты
protected
Классы-определения
SeqViewLike → IterableViewLike → TraversableViewLike

def newZipped[B](that: GenIterable[B]): Transformed[(A, B)]

Шаблонный метод для переопределения в каждом подклассе. Этот метод можно было бы исключить, если бы в Scala были виртуальные классы

Атрибуты
protected
Классы-определения
SeqViewLike → IterableViewLike

def newZippedAll[A1 >: A, B](that: GenIterable[B], _thisElem: A1, _thatElem: B): Transformed[(A1, B)]

Атрибуты
protected
Классы-определения
SeqViewLike → IterableViewLike

def nonEmpty: Boolean

Проверяет, является ли обобщённое множество или итератор непустым.

возвращает

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

Классы-определения
TraversableOnce → GenTraversableOnce

final def notify(): Unit

Разбуживает единственную нить, которая ожидает монитора объекта-получателя.

Классы-определения
AnyRef
Аннотации
@native()
Примечание

не указано в SLS как член AnyRef

final def notifyAll(): Unit

Разбуживает все нити, которые ожидают монитора объекта-получателя.

Классы-определения
AnyRef
Аннотации
@native()
Примечание

не указано в SLS как член AnyRef

def orElse[A1 <: Int, B1 >: A](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]

Объединяет эту частичную функцию с резервной частичной функцией, которая применяется в тех случаях, когда эта частичная функция не определена.

A1

тип аргумента резервной функции

B1

тип возвращаемого значения резервной функции

that

резервная функция

возвращает

частичная функция, область определения которой представляет собой объединение областей определения этой частичной функции и that. Результирующая частичная функция принимает x в this(x), где this определена, и that(x) в противном случае.

Классы-определения
PartialFunction

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

[use case]

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

len

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

elem

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike
Полная сигнатура

def par: ParSeq[A]

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

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

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

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

returns

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

Definition Classes
Parallelizable

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

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

returns

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

Attributes
protected[this]
Definition Classes
SeqLike → TraversableLike → Parallelizable

def partition(p: (A) ⇒ Boolean): (This, This)

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

p

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike

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

[use case]

Создаёт новую последовательность, где фрагмент элементов в этой последовательности заменяется другой последовательностью.

from

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

replaced

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike
Полная сигнатура

def permutations: Iterator[This]

Проходит по различным перестановкам.

returns

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

Definition Classes
SeqViewLike → SeqLike
Пример:

    "abb".permutations = Iterator(abb, bab, bba)

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

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

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

p

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

returns

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

Definition Classes
GenSeqLike

def product: A

[use case]

Умножает элементы этой коллекции.

returns

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

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

UnsupportedOperationException если этот итерируемый объект или итератор пуст.

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

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

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

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

B

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

op

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

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

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

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

A1

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

op

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

returns

Значение Option, содержащее результат применения оператора 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
IterableLike → TraversableOnce → GenTraversableOnce
Исключения

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

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

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

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

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

B

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

op

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def repr: This

Коллекция типа traversable collection, лежащая в основе этого TraversableLike объекта. По умолчанию это реализуется как сам объект TraversableLike, но это можно переопределить.

Definition Classes
TraversableLike → GenTraversableLike

def reverse: This

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

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike

def reverseIterator: Iterator[A]

Итератор, возвращающий элементы в обратном порядке.

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

Примечание: xs.reverseIterator то же самое, что и xs.reverse.iterator, но может быть более эффективным.

returns

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

Definition Classes
SeqLike

def reverseMap[B](f: (A) ⇒ B): Seq[B]

[use case]

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

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

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

B

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

f

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

returns

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

Definition Classes
SeqViewLike → SeqLike → GenSeqLike
Полная подпись

def reversed: List[A]

Attributes
protected[this]
Definition Classes
TraversableOnce

def runWith[U](action: (A) ⇒ U): (Int) ⇒ Boolean

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

Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно

if(pf isDefinedAt x) { action(pf(x)); true } else false

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

action

функция действия

returns

функция, которая сопоставляет аргументы x с isDefinedAt(x). Результирующая функция выполняет action(this(x)) там, где this определена.

Definition Classes
PartialFunction
Since

2.10

См. также

applyOrElse.

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

[use case]

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

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

that

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

returns

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

Definition Classes
IterableLike → GenIterableLike
Полная подпись

def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[This, 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[This, B, That]): That

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

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

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

B

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

That

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

z

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

op

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

bf

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

возвращает

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike

def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[This, 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.

возвращает

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike
Annotations
@migration
Migration

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

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

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

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

p

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

from

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

возвращает

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

Definition Classes
SeqLike → GenSeqLike

def seq: Seq[A]

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

Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределён для возврата последовательной реализации этой коллекции. В обоих случаях сложность составляет O(1).

возвращает

последовательный вид коллекции.

Definition Classes
Seq → GenSeq → GenSeqLike → Iterable → GenIterable → Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce

def size: Int

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

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

возвращает

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

Definition Classes
SeqLike → GenTraversableLike → TraversableOnce → GenTraversableOnce

def sizeHintIfCheap: Int

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

возвращает

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

Attributes
protected[collection]
Definition Classes
GenTraversableOnce

def slice(from: Int, until: Int): This

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

from <= indexOf(x) < until

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

возвращает

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike

def sliding(size: Int): Iterator[This]

Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения их, как это делается в grouped). Шаг «скользящего окна» установлен в единицу.

size

количество элементов в группе

returns

Итератор, генерирующий итерируемые коллекции размера size, за исключением последнего элемента (который может быть единственным), который будет усечён, если оставшихся элементов для группировки меньше, чем size.

Definition Classes
IterableViewLike → IterableLike
See also

scala.collection.Iterator, метод sliding

def sliding(size: Int, step: Int): Iterator[This]

Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения их, как это делается в grouped).

size

количество элементов в группе

step

расстояние между первыми элементами последовательных групп

returns

Итератор, генерирующий итерируемые коллекции размера size, за исключением последнего элемента (который может быть единственным), который будет усечён, если оставшихся элементов для группировки меньше, чем size.

Definition Classes
IterableViewLike → IterableLike
See also

scala.collection.Iterator, метод sliding

def sortBy[B](f: (A) ⇒ B)(implicit ord: Ordering[B]): This

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

B

целевой тип преобразования f, и тип, в котором определено упорядочение ord.

f

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

ord

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

returns

последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с упорядочением, где x < y если ord.lt(f(x), f(y)).

Definition Classes
SeqViewLike → SeqLike
Пример:
    val words = "The quick brown fox jumped over the lazy dog".split(' ')
    // this works because scala.Ordering will implicitly provide an Ordering[Tuple2[Int, Char]]
    words.sortBy(x => (x.length, x.head))
    res0: Array[String] = Array(The, dog, fox, the, lazy, over, brown, quick, jumped)
See also

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

def sortWith(lt: (A, A) ⇒ Boolean): This

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

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

Сортировка стабильна. То есть, элементы, которые равны (как определено lt), появляются в отсортированной последовательности в том же порядке, что и в исходной.

lt

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

returns

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

Definition Classes
SeqViewLike → SeqLike
Пример:
    List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
    List("Bob", "John", "Steve", "Tom")

def sorted[B >: A](implicit ord: Ordering[B]): This

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

Сортировка стабильна. То есть, элементы, которые равны (как определено lt), появляются в отсортированной последовательности в том же порядке, что и в исходной.

ord

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

returns

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

Definition Classes
SeqViewLike → SeqLike
See also

scala.math.Ordering

def span(p: (A) ⇒ Boolean): (This, This)

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

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

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike

def splitAt(n: Int): (This, This)

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

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

n

позиция разделения.

returns

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

Definition Classes
TraversableViewLike → TraversableLike → GenTraversableLike

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

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

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

that

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

offset

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

returns

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

Definition Classes
SeqLike → GenSeqLike

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

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

that

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

returns

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

Definition Classes
GenSeqLike

def stringPrefix: String

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

returns

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

Definition Classes
SeqViewLike → IterableViewLike → TraversableViewLike → TraversableLike → GenTraversableLike

def sum: A

[use case]

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

returns

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

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

final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef

def tail: This

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

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

returns

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

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

java.lang.UnsupportedOperationException если коллекция пуста.

def tails: Iterator[This]

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

returns

итератор по всем хвостам этой коллекции

Definition Classes
TraversableViewLike → TraversableLike
Пример:

    List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)

def take(n: Int): This

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

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

n

количество элементов для взятия из этой итерируемой коллекции.

returns

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

Definition Classes
IterableViewLike → TraversableViewLike → IterableLike → TraversableLike → GenTraversableLike

def takeRight(n: Int): This

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

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

n

количество элементов для взятия

returns

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

Definition Classes
IterableViewLike → IterableLike

def takeWhile(p: (A) ⇒ Boolean): This

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

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

возвращает

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

Классы определений
TraversableViewLike → TraversableLike → GenTraversableLike

def thisCollection: Seq[A]

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

Атрибуты
protected[this]
Классы определений
SeqLike → IterableLike → TraversableLike

def thisSeq: Seq[A]

Атрибуты
protected[this]
Классы определений
ViewMkString

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

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

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

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

Col

Тип коллекции, подлежащей построению.

возвращает

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

Классы определений
TraversableLike → TraversableOnce → GenTraversableOnce
Полная сигнатура

def toArray: Array[A]

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

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

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

возвращает

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

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

def toBuffer[B >: A]: Buffer[B]

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

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

возвращает

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

Классы определений
TraversableOnce → GenTraversableOnce

def toCollection(repr: This): Seq[A]

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

Атрибуты
protected[this]
Классы определений
SeqLike → IterableLike → TraversableLike

def toIndexedSeq: immutable.IndexedSeq[A]

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

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

возвращает

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

Классы определений
TraversableOnce → GenTraversableOnce

def toIterable: Iterable[A]

Возвращает эту коллекцию как коллекцию Iterable.

Новая коллекция не будет создана; ленивые коллекции останутся ленивыми.

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

возвращает

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

Классы определений
IterableLike → TraversableOnce → GenTraversableOnce

def toIterator: Iterator[A]

Возвращает итератор по элементам в этой коллекции. Возвращает тот же результат, что и iterator.

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

возвращает

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

Классы определений
IterableLike → TraversableLike → GenTraversableOnce
Аннотации
@deprecatedOverriding( message = ... , since = "2.11.0" )

def toList: List[A]

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

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

возвращает

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

Классы определений
TraversableOnce → GenTraversableOnce

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

[use case]

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

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce
Full Signature

def toParArray: ParArray[T]

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

def toSeq: Seq[A]

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

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

Новая коллекция не будет создана; в частности, ленивые последовательности останутся ленивыми.

returns

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

Definition Classes
SeqLike → GenSeqLike → TraversableOnce → GenTraversableOnce

def toSet[B >: A]: immutable.Set[B]

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

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def toStream: immutable.Stream[A]

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

returns

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

Definition Classes
IterableLike → TraversableLike → GenTraversableOnce

def toString(): String

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

returns

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

Definition Classes
TraversableViewLike → TraversableLike → AnyRef → Any

def toTraversable: Traversable[A]

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

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

returns

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

Definition Classes
TraversableLike → TraversableOnce → GenTraversableOnce
Annotations
@deprecatedOverriding( message = ... , since = "2.11.0" )

def toVector: Vector[A]

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

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def transpose[B](implicit asTraversable: (A) ⇒ GenTraversableOnce[B]): Seq[Seq[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.

returns

двумерная коллекция коллекций, в которой n-я строка — это n-й столбец этой коллекции.

Классы определений
GenericTraversableTemplate
Аннотации
@migration
Миграция

(Изменено в версии 2.9.0) transpose вызывает IllegalArgumentException , если коллекции не имеют одинакового размера.

Исключения

IllegalArgumentException, если все коллекции в этой коллекции не имеют одинаковый размер.

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

[use case]

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

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

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

that

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

returns

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

Классы определений
SeqViewLike → SeqLike → GenSeqLike
Полная сигнатура

def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (SeqViewLike.Transformed[A1], SeqViewLike.Transformed[A2])

Преобразует эту коллекцию пар в две коллекции первой и второй половины каждой пары.

val xs = Traversable(
           (1, "one"),
           (2, "two"),
           (3, "three")).unzip
// xs == (Traversable(1, 2, 3),
//        Traversable(one, two, three))
A1

тип первой половины пар элементов

A2

тип второй половины пар элементов

asPair

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

returns

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

Классы определений
TraversableViewLike → GenericTraversableTemplate

def unzip3[A1, A2, A3](implicit asTriple: (A) ⇒ (A1, A2, A3)): (SeqViewLike.Transformed[A1], SeqViewLike.Transformed[A2], SeqViewLike.Transformed[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

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

Классы определений
TraversableViewLike → GenericTraversableTemplate

def updated(index: Int, elem: A): Seq[A]

[use case]

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

index

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

elem

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

returns

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

Классы определений
SeqViewLike → SeqLike → GenSeqLike
Полная сигнатура

def view(from: Int, until: Int): SeqView[A, This]

Создаёт нестрогую просмотрную область (view) среза этой последовательности.

Примечание: разница между view и slice в том, что view создаёт просмотрную область текущей последовательности, а slice создаёт новую последовательность.

Примечание: view(from, to) эквивалентно view.slice(from, to)

from

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

until

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

returns

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

Классы определений
SeqLike → IterableLike → TraversableLike

def view: SeqView[A, This]

Создаёт нестрогую (non-strict) просмотр этого последовательности.

returns

нестрогую (non-strict) просмотр этой последовательности.

Definition Classes
SeqLike → IterableLike → TraversableLike

def viewIdString: String

Attributes
protected[this]
Definition Classes
TraversableViewLike

def viewIdentifier: String

Attributes
protected[this]
Definition Classes
TraversableViewLike

def viewToString: String

Definition Classes
TraversableViewLike

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

Definition Classes
AnyRef
Annotations
@throws( ... ) @native()

def withFilter(p: (A) ⇒ Boolean): This

Создаёт нестрогую фильтрацию (non-strict filter) этого набора.

Примечание: разница между c filter p и c withFilter p в том, что первый создаёт новый набор, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.

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

p

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

returns

объект класса WithFilter, который поддерживает map, flatMap, foreach, и withFilter операции. Все эти операции применяются к тем элементам этого набора, которые удовлетворяют предикату p.

Definition Classes
TraversableViewLike → TraversableLike → FilterMonadic

def zip[B](that: GenIterable[B]): Seq[(A, B)]

[use case]

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

B

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

that

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

returns

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

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

def zipAll[B](that: Iterable[B], thisElem: A, thatElem: B): Seq[(A, B)]

[use case]

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

B

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

that

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

thisElem

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

thatElem

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

returns

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

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

def zipWithIndex: Seq[(A, Int)]

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

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

возвращает

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

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

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

def →[B](y: B): (SeqViewLike[A, Coll, This], B)

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

Затенённые неявные члены значения

def filter(p: (A) ⇒ Boolean): TraversableOnce[A]

Неявный
Этот член добавляется неявным преобразованием из SeqViewLike[A, Coll, This] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
Затенение
Этот неявный унаследованный член затенено одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типов:
(seqViewLike: MonadOps[A]).filter(p)
Определяющие классы
MonadOps

def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]

Неявный
Этот член добавляется неявным преобразованием из SeqViewLike[A, Coll, This] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
Затенение
Этот неявный унаследованный член затенено одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типов:
(seqViewLike: MonadOps[A]).flatMap(f)
Определяющие классы
MonadOps

def map[B](f: (A) ⇒ B): TraversableOnce[B]

Неявный
Этот член добавляется неявным преобразованием из SeqViewLike[A, Coll, This] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
Затенение
Этот неявный унаследованный член затенено одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типов:
(seqViewLike: MonadOps[A]).map(f)
Определяющие классы
MonadOps

def withFilter(p: (A) ⇒ Boolean): Iterator[A]

Неявный
Этот член добавляется неявным преобразованием из SeqViewLike[A, Coll, This] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
Затенение
Этот неявный унаследованный член затенено одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типов:
(seqViewLike: 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/SeqViewLike.html

Spec-Zone.ru

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