Трейт 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]
Элементы типа
интерфейс 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]
Как и ++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.
Отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мнемоника: двоеточие стоит со стороны нового типа коллекции.
Пример:
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]
Копия последовательности с добавленным элементом в начало.
Обратите внимание, что операторы с окончанием :- являются правоассоциативными (см. пример). Мемоническое правило для +: против :+ таково: двоеточие ставится со стороны коллекции.
Кроме того, исходная последовательность не изменяется, поэтому вам нужно будет сохранить результат.
Пример:
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]
Копия этой последовательности с добавленным элементом в конец.
Мемоническое правило для +: против :+ таково: двоеточие ставится со стороны коллекции.
Примечание: не завершится для коллекций бесконечного размера.
Пример:
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
копию объекта-получателя.
def collect[B](pf: PartialFunction[A, B]): Seq[B]
Создаёт новую коллекцию, применяя частичную функцию ко всем элементам этой последовательности, для которых функция определена.
- 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
Копирует элементы этой последовательности в массив. Заполняет заданный массив xs не более чем len элементами этой последовательности, начиная с позиции start. Копирование остановится, как только будет достигнут конец текущей последовательности, или конец целевого массива, или будет скопировано len элементов.
Примечание: не будет завершаться для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество элементов для копирования.
- Определяющие классы
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A]): Unit
Копирует элементы этой последовательности в массив. Заполняет заданный массив xs значениями этой последовательности. Копирование остановится, как только будет достигнут конец текущей последовательности, или конец целевого массива.
Примечание: не будет завершаться для коллекций бесконечного размера.
- xs
массив для заполнения.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этой последовательности в массив. Заполняет заданный массив 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этой последовательности иythat, в противном случаеfalse.
- Определяющие классы
- SeqLike → GenSeqLike
def count(p: (A) ⇒ Boolean): Int
Подсчитывает количество элементов в обходе или итераторе, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def diff(that: Seq[A]): Seq[A]
Вычисляет разность мультимножеств между этим последовательностью и другой последовательностью.
Примечание: не завершится для коллекций бесконечного размера.
- 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]
Создаёт новый набор, применяя функцию ко всем элементам этого последовательности и используя элементы полученных наборов.
Например:
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]
Преобразует эту последовательность наборов в последовательность, образованную из элементов этих наборов.
Тип результирующего набора будет определён статическим типом последовательности. Например:
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
Применяет функцию 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
объект класса, соответствующий типу времени выполнения получателя.
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, за исключением последнего, который будет меньше sizesize, если элементы не делятся на 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
Находит индекс первого вхождения некоторого значения в этой последовательности после или на некотором начальном индексе.
Примечание: может не завершиться для наборов бесконечного размера.
- elem
значение искомого элемента.
- from
начальный индекс
- returns
индекс
>= fromпервого элемента этой последовательности, который равен (как определено==)elem, или-1, если такой не существует.
- Definition Classes
- GenSeqLike
def indexOf(elem: A): Int
Находит индекс первого вхождения некоторого значения в этой последовательности.
Примечание: может не завершиться для наборов бесконечного размера.
- 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]
Вычисляет пересечение мультимножеств между этой последовательностью и другой последовательностью.
Примечание: может не завершиться для коллекций бесконечного размера.
- 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
Находит индекс последнего вхождения значения в этой последовательности до или на заданном индексе.
- elem
значение искомого элемента.
- end
индекс конца.
- возвращает
индекс
<= endпоследнего элемента этой последовательности, равного (как определяется==)elem, или-1, если такового нет.
- Классы-определения
- GenSeqLike
def lastIndexOf(elem: A): Int
Находит индекс последнего вхождения значения в этой последовательности.
Примечание: не завершится для наборов бесконечного размера.
- 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]
Создает новую коллекцию, применяя функцию ко всем элементам этой последовательности.
- B
тип элементов возвращаемой коллекции.
- f
функция, которую нужно применить к каждому элементу.
- returns
новая последовательность, полученная в результате применения заданной функции
fк каждому элементу этой последовательности и сбора результатов.
- Definition Classes
- TraversableViewLike → TraversableLike → GenTraversableLike → FilterMonadic
def max: A
Находит наибольший элемент.
- returns
наибольший элемент этой последовательности.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли эта последовательность пустая.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этой последовательности с наибольшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли эта последовательность пустая.
def min: A
Находит наименьший элемент.
- returns
наименьший элемент этой последовательности
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли эта последовательность пустая.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наименьшее значение, измеренное функцией 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]
Копия этого последовательности с добавленным значением элемента до достижения заданной целевой длины.
- 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]
Создаёт новую последовательность, где фрагмент элементов в этой последовательности заменяется другой последовательностью.
- 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
Умножает элементы этой коллекции.
- 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]
Строит новую коллекцию, применяя функцию ко всем элементам этой последовательности и собирая результаты в обратном порядке.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: 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
Проверяет, содержит ли другая итерируемая коллекция те же элементы в том же порядке, что и эта последовательность.
Примечание: не будет завершаться для коллекций бесконечного размера.
- 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
- See also
scala.math.Ordering Примечание: не завершится для коллекций бесконечного размера.
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)
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
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
Суммирует элементы этой коллекции.
- 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]
Преобразует эту последовательность в словарь. Этот метод недоступен, если элементы не являются членами Tuple2, при этом каждый ((T, U)) становится парой ключ-значение в словаре. Дублирующиеся ключи будут перезаписываться последующими ключами: если это неупорядоченная коллекция, ключ в результирующем словаре не определен.
Примечание: не завершится для коллекций бесконечного размера.
- returns
словарь типа
immutable.Map[T, U]содержащий все пары ключ/значение типа(T, U)этой последовательности.
- Definition Classes
- TraversableOnce → GenTraversableOnce
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]
Создаёт новую последовательность, содержащую все элементы этой последовательности и все элементы заданной последовательности. 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]
Копия этой последовательности с одним заменённым элементом.
- 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
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)]
Возвращает последовательность, образованную из этой последовательности и другой итерируемой коллекции, объединяя соответствующие элементы в пары. Если одна из двух коллекций длиннее другой, оставшиеся её элементы игнорируются.
- B
тип второй половины возвращаемых пар
- that
Итерируемая коллекция, предоставляющая вторую половину каждой пары результатов
- returns
новая последовательность, содержащая пары, состоящие из соответствующих элементов этой последовательности и
that. Длина возвращаемой коллекции равна минимальной длине этой последовательности иthat.
- Definition Classes
- IterableViewLike → IterableLike → GenIterableLike
def zipAll[B](that: Iterable[B], thisElem: A, thatElem: B): Seq[(A, B)]
Возвращает последовательность, образованную из этой последовательности и другой итерируемой коллекции, объединяя соответствующие элементы в пары. Если одна из двух коллекций короче другой, для заполнения используются значения-заполнители.
- 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
Шаблонный трейт для ленивых представлений последовательностей.
Представление — это ленивая версия некоторой коллекции. Трансформаторы коллекций, такие как
mapилиfilterили++, не обходят элементы при применении к представлению. Вместо этого они создают новое представление, просто записывая тот факт, что операция должна быть применена. Элементы коллекции и операции представления применяются, когда требуется результат, не являющийся представлением, или когда вызывается методforceна представлении. Все представления последовательностей определяются заново с использованием методовlengthиapply.