Trait scala.collection.GenSeq
Companion object GenSeq
trait GenSeq[+A] extends GenSeqLike[A, GenSeq[A]] with GenIterable[A] with Equals with GenericTraversableTemplate[A, GenSeq]
Члены-значения абстрактного типа
abstract def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[GenSeq[A], B, That]): That
Возвращает новую общую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов общей коллекции — это наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
- B
тип элементов возвращаемой коллекции.
- That
класс возвращаемой коллекции. В возможных случаях
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, допустим ли тип элементаBдля этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
объект-перечисление для добавления.
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatпо текущему типу представленияReprи новому типу элементаB.- returns
новая коллекция типа
That, которая содержит все элементы этой общей коллекции, за которыми следуют все элементыthat.
- Definition Classes
- GenTraversableLike
abstract def /:[B](z: B)(op: (B, A) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции или итератора слева направо.
Примечание: /: — это альтернативная запись для foldLeft; z /: xs равно xs foldLeft z.
Примеры:
Обратите внимание, что функция свертки, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_) b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y) c: Int = 15
Примечание: для коллекций бесконечного размера не будет завершения.
Примечание: могут быть получены разные результаты для разных запусков, если только тип базовой коллекции не упорядочен, или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции или итератора слева направо с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn— это элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def :\[B](z: B)(op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой коллекции или итератора и начальному значению справа налево.
Примечание: :\ — это альтернативная запись для foldRight; xs :\ z равно xs foldRight z.
Примечание: для коллекций бесконечного размера не будет завершения.
Примечание: могут быть получены разные результаты для разных запусков, если только тип базовой коллекции не упорядочен, или оператор не является ассоциативным и коммутативным.
Примеры:
Обратите внимание, что функция свертки, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_) b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y) c: Int = 15
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции или итератора справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— это элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def aggregate[B](z: ⇒ B)(seqop: (B, A) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общий вид fold и reduce. Аналогично foldLeft, он не требует, чтобы результат был супертипом типа элемента. Кроме того, он позволяет обрабатывать параллельные коллекции частями, а затем комбинировать промежуточные результаты.
aggregate разбивает коллекцию или итератор на разделы и обрабатывает каждый раздел последовательно с применением seqop, начиная с z (как foldLeft). Эти промежуточные результаты затем комбинируются с использованием combop (как fold). Реализация этой операции может работать с произвольным количеством разделов коллекции (даже 1), поэтому combop может вызываться произвольное число раз (даже 0).
Например, рассмотрим суммирование целочисленных значений списка символов. Начальное значение для суммы — 0. Сначала seqop преобразует каждый символ ввода в Int и добавляет его к сумме (раздела). Затем combop просто суммирует промежуточные результаты разделов:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип аккумулированных результатов
- z
начальное значение для аккумулированного результата раздела — это обычно нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования) и может быть вычислено более одного раза- seqop
оператор, используемый для аккумулирования результатов внутри раздела
- combop
ассоциативный оператор, используемый для объединения результатов из разных разделов
- Definition Classes
- GenTraversableOnce
abstract def apply(idx: Int): A
Выбирает элемент по его индексу в общей последовательности.
Пример:
scala> val x = List(1, 2, 3, 4, 5) x: List[Int] = List(1, 2, 3, 4, 5) scala> x(3) res1: Int = 4
- idx
Индекс для выбора.
- returns
элемент этой общей последовательности по индексу
idx, где0указывает на первый элемент.
- Definition Classes
- GenSeqLike
- Исключения
IndexOutOfBoundsException, еслиidxне удовлетворяет0 <= idx < length.
abstract def canEqual(that: Any): Boolean
Метод, который должен вызываться из каждого хорошо спроектированного метода equals, который может быть переопределен в подклассе. См. Programming in Scala, глава 28 для обсуждения и проектирования.
- that
значение, проверяемое на возможность равенства
- returns
true, если этот экземпляр может быть равен
that, иначе false
- Definition Classes
- Equals
abstract def corresponds[B](that: GenSeq[B])(p: (A, B) ⇒ Boolean): Boolean
Проверяет, удовлетворяет ли каждый элемент этой общей последовательности соответствующему элементу другой последовательности, удовлетворяя условию предиката.
- B
тип элементов
that- that
другая последовательность
- p
предикат условия, который соотносит элементы из обеих последовательностей
- returns
trueесли обе последовательности имеют одинаковую длину иp(x, y)удовлетворяетtrueдля всех соответствующих элементовxэтой общей последовательности иyизthat, в противном случаеfalse.
- Definition Classes
- GenSeqLike
abstract def count(p: (A) ⇒ Boolean): Int
Считает количество элементов в коллекции или итераторе, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- GenTraversableOnce
abstract def distinct: GenSeq[A]
Создает новую общую последовательность из этой общей последовательности без дублирующих элементов.
Примечание: не завершится для бесконечных коллекций.
- returns
Новая общая последовательность, содержащая первое вхождение каждого элемента этой общей последовательности.
- Definition Classes
- GenSeqLike
abstract def drop(n: Int): GenSeq[A]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
количество элементов для удаления из этой общей коллекции.
- returns
общая коллекция, состоящая из всех элементов этой общей коллекции, кроме первых
nэлементов, или пустая общая коллекция, если в этой общей коллекции меньшеnэлементов. Еслиnотрицательно, не удалять элементы.
- Definition Classes
- GenTraversableLike
abstract def dropWhile(pred: (A) ⇒ Boolean): GenSeq[A]
Удаляет наибольший префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- pred
предикат, используемый для проверки элементов.
- returns
наибольший суффикс этой общей коллекции, первый элемент которого не удовлетворяет предикату
p.
- Definition Classes
- GenTraversableLike
abstract def endsWith[B](that: GenSeq[B]): Boolean
Проверяет, заканчивается ли эта общая последовательность заданной последовательностью.
Примечание: не завершится для бесконечных коллекций.
- that
тестируемая последовательность
- returns
trueесли у этой общей последовательностиthatявляется суффиксом,falseв противном случае.
- Definition Classes
- GenSeqLike
abstract def exists(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для хотя бы одного элемента этой коллекции или итератора.
Примечание: может не завершиться для бесконечных коллекций.
- p
предикат, используемый для проверки элементов.
- returns
trueесли заданный предикатpудовлетворяется хотя бы одним элементом этой коллекции или итератора, иначеfalse
- Definition Classes
- GenTraversableOnce
abstract def filter(pred: (A) ⇒ Boolean): GenSeq[A]
Выбирает все элементы этого общего набора, которые удовлетворяют предикату.
- pred
предикат, используемый для проверки элементов.
- returns
новый общий набор, состоящий из всех элементов этого общего набора, удовлетворяющих заданному предикату
p. Их порядок может не сохраняться.
- Definition Classes
- GenTraversableLike
abstract def filterNot(pred: (A) ⇒ Boolean): GenSeq[A]
Выбирает все элементы этого общего набора, которые не удовлетворяют предикату.
- pred
предикат, используемый для проверки элементов.
- returns
новый общий набор, состоящий из всех элементов этого общего набора, которые не удовлетворяют заданному предикату
p. Их порядок может не сохраняться.
- Definition Classes
- GenTraversableLike
abstract def find(p: (A) ⇒ Boolean): Option[A]
Находит первый элемент коллекции или итератора, удовлетворяющий предикату, если таковой существует.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
значение типа Option, содержащее первый элемент в коллекции или итераторе, удовлетворяющий
p, илиNone, если такового не существует.
- Definition Classes
- GenTraversableOnce
abstract def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1
Складывает элементы этой коллекции или итератора, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
- A1
параметр типа для бинарного оператора, надтип
A.- z
нейтральный элемент для операции fold; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора fold
opмежду всеми элементами иz, илиzесли эта коллекция или итератор пустая.
- Definition Classes
- GenTraversableOnce
abstract def foldLeft[B](z: B)(op: (B, A) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции или итератора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции или итератора слева направо с начальным значениемzслева:op(...op(z, x_1), x_2, ..., x_n)
где
x1, ..., xn— элементы этой коллекции или итератора. Возвращаетzесли эта коллекция или итератор пустые.
- Definition Classes
- GenTraversableOnce
abstract def foldRight[B](z: B)(op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой коллекции или итератора и начальному значению, справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции или итератора справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— элементы этой коллекции или итератора. Возвращаетzесли эта коллекция или итератор пустые.
- Definition Classes
- GenTraversableOnce
abstract def forall(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этой коллекции или итератора.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
trueесли эта коллекция или итератор пустая или данный предикатpвыполняется для всех элементов этой коллекции или итератора, в противном случаеfalse.
- Definition Classes
- GenTraversableOnce
abstract def groupBy[K](f: (A) ⇒ K): GenMap[K, GenSeq[A]]
Разделяет эту общую коллекцию на карту общих коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда будет принудительно создавать представление и возвращать новую общую коллекцию.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- returns
-
Карта из ключей в общие коллекции, такая что выполняется следующее инвариантное свойство:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть каждый ключ
kсвязан с общей коллекцией тех элементовx, для которыхf(x)равноk.
- Definition Classes
- GenTraversableLike
abstract def hasDefiniteSize: Boolean
Проверяет, известно ли, что у этой коллекции или итератора конечный размер. Все строгие коллекции известны как имеющие конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true если все элементы были вычислены. Возвращает false если поток ещё не был вычислен до конца. Непустые итераторы обычно возвращают false даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечных размеров. Типичный режим сбоя - бесконечный цикл. Эти методы всегда пытаются выполнить обход без предварительной проверки, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер определён и не происходит бесконечной работы.
- returns
trueесли эта коллекция известна как имеющая конечный размер,falseв противном случае.
- Definition Classes
- GenTraversableOnce
abstract def head: A
Выбирает первый элемент этой коллекции.
- returns
первый элемент этой коллекции.
- Definition Classes
- GenericTraversableTemplate
- Исключения
NoSuchElementExceptionесли коллекция пуста.
abstract def headOption: Option[A]
Выбирает первый элемент, если он есть.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
первый элемент этой общей коллекции, если она непустая,
Noneесли она пустая.
- Definition Classes
- GenTraversableLike
abstract def indexWhere(p: (A) ⇒ Boolean, from: Int): Int
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на определённом начальном индексе.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- from
начальный индекс
- returns
индекс
>= fromпервого элемента этой общей последовательности, удовлетворяющего предикатуp, или-1, если такой элемент не существует.
- Definition Classes
- GenSeqLike
abstract def init: GenSeq[A]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
общая коллекция, состоящая из всех элементов этой общей коллекции, кроме последнего.
- Definition Classes
- GenTraversableLike
- Исключения
UnsupportedOperationExceptionесли общая коллекция пуста.
abstract def isEmpty: Boolean
Проверяет, пуста ли эта коллекция.
- returns
trueесли коллекция не содержит элементов,falseв противном случае.
- Definition Classes
- GenericTraversableTemplate
abstract def isTraversableAgain: Boolean
Проверяет, может ли эта общая коллекция быть многократно проитерирована.
- returns
true
- Definition Classes
- GenTraversableLike → GenTraversableOnce
abstract def iterator: Iterator[A]
- Definition Classes
- GenIterableLike
abstract def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
Последний элемент этой общей коллекции.
- Definition Classes
- GenTraversableLike
- Исключения
NoSuchElementExceptionЕсли общая коллекция пуста.
abstract def lastIndexWhere(p: (A) ⇒ Boolean, end: Int): Int
Находит индекс последнего элемента, удовлетворяющего некоторому предикату перед или на заданном индексе конца.
- p
предикат, используемый для проверки элементов.
- returns
индекс
<= endпоследнего элемента этой общей последовательности, удовлетворяющего предикатуp, или-1, если такой элемент не существует.
- Definition Classes
- GenSeqLike
abstract def lastOption: Option[A]
Возвращает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
последний элемент этой обобщенной коллекции, если она не пустая,
Noneесли она пустая.
- Definition Classes
- GenTraversableLike
abstract def length: Int
Длина обобщенной последовательности.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: xs.length и xs.size дают одинаковый результат.
- returns
количество элементов в этой обобщенной последовательности.
- Definition Classes
- GenSeqLike
- Exceptions thrown
IllegalArgumentExceptionесли длина последовательности не может быть представлена вInt, например,(-1 to Int.MaxValue).length.
abstract def mkString: String
Отображает все элементы этой коллекции или итератора в строке.
- returns
строковое представление этой коллекции или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этой коллекции или итератора следуют друг за другом без разделителя.
- Definition Classes
- GenTraversableOnce
abstract def mkString(sep: String): String
Отображает все элементы этой коллекции или итератора в строке с использованием разделителя.
- sep
строка-разделитель.
- returns
строковое представление этой коллекции или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этой коллекции или итератора разделены строкойsep.
- Definition Classes
- GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
abstract def mkString(start: String, sep: String, end: String): String
Отображает все элементы этой коллекции или итератора в строке с использованием начальной, конечной и разделительной строк.
- start
начальная строка.
- sep
строка-разделитель.
- end
конечная строка.
- returns
строковое представление этой коллекции или итератора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри, строковые представления (с помощью методаtoString) всех элементов этой коллекции или итератора разделены строкойsep.
- Definition Classes
- GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
abstract def nonEmpty: Boolean
Проверяет, не пуста ли коллекция или итератор.
- returns
trueесли коллекция или итератор содержит хотя бы один элемент,falseв противном случае.
- Definition Classes
- GenTraversableOnce
abstract def parCombiner: Combiner[A, ParSeq[A]]
Реализация по умолчанию для par использует комбинирователь, предоставленный этим методом, для создания новой параллельной коллекции.
- returns
комбинирователь для параллельной коллекции типа
ParRepr
- Attributes
- protected[this]
- Definition Classes
- Parallelizable
abstract def partition(pred: (A) ⇒ Boolean): (GenSeq[A], GenSeq[A])
Разделяет эту обобщенную коллекцию на две обобщенные коллекции в соответствии с предикатом.
- pred
предикат для разделения.
- returns
пара обобщенных коллекций: первая обобщенная коллекция состоит из всех элементов, которые удовлетворяют предикату
p, а вторая обобщенная коллекция состоит из всех элементов, которые не удовлетворяют ему. Относительный порядок элементов в результирующих обобщенных коллекциях может не сохраняться.
- Definition Classes
- GenTraversableLike
abstract def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1
Применяет заданный ассоциативный бинарный оператор к элементам этой коллекции или итератора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Параметр типа для бинарного оператора, являющийся супертипом
A.- op
Ассоциативный бинарный оператор.
- returns
Результат применения оператора
opко всем элементам, если коллекция или итератор не пустые.
- Definition Classes
- GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли эта коллекция или итератор пустые.
abstract def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
Возможное применение бинарного оператора ко всем элементам этого набора или итератора слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- возвращает
вариант значения, содержащий результат
reduceLeft(op), если этот набор или итератор непустой,Noneв противном случае.
- Definition Classes
- GenTraversableOnce
abstract def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]
Сводит элементы этого набора или итератора, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Параметр типа для бинарного оператора, надтипа
A.- op
Бинарный оператор, который должен быть ассоциативным.
- возвращает
Вариант значения, содержащий результат применения оператора reduce
opмежду всеми элементами, если коллекция непуста, иNoneв противном случае.
- Definition Classes
- GenTraversableOnce
abstract def reduceRight[B >: A](op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой коллекции или итератора, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- возвращает
-
результат вставки
opмежду последовательными элементами этого набора или итератора, справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn— элементы этого набора или итератора.
- Definition Classes
- GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот набор или итератор пустой.
abstract def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
Возможное применение бинарного оператора ко всем элементам этого набора или итератора справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- возвращает
вариант значения, содержащий результат
reduceRight(op)если этот набор или итератор непустой,Noneв противном случае.
- Definition Classes
- GenTraversableOnce
abstract def repr: GenSeq[A]
- Definition Classes
- GenTraversableLike
abstract def reverse: GenSeq[A]
Возвращает новый общий список с элементами в обратном порядке.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
Новый общий список со всеми элементами этого общего списка в обратном порядке.
- Definition Classes
- GenSeqLike
abstract def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[GenSeq[A], B, That]): That
Вычисляет префиксную сканирование элементов коллекции.
Примечание: нейтральный элемент z может быть применен более одного раза.
- B
тип элемента результирующей коллекции
- That
тип результирующей коллекции
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- cbf
фабрика комбинирования, которая предоставляет комбинатор
- возвращает
новая общая коллекция, содержащая префиксное сканирование элементов в этой общей коллекции
- Definition Classes
- GenTraversableLike
abstract def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[GenSeq[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементовB.- returns
коллекция с промежуточными результатами
- Definition Classes
- GenTraversableLike
abstract def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[GenSeq[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементовB.- returns
коллекция с промежуточными результатами
- Definition Classes
- GenTraversableLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0) Поведение
scanRightизменилось. Предыдущее поведение можно воспроизвести с помощью scanRight.reverse.
abstract def segmentLength(p: (A) ⇒ Boolean, from: Int): Int
Вычисляет длину самого длинного сегмента, элементы которого удовлетворяют некоторому предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- from
индекс, с которого начинается поиск.
- returns
длина самого длинного сегмента этой общей последовательности, начинающегося с индекса
from, такого что каждый элемент сегмента удовлетворяет предикатуp.
- Definition Classes
- GenSeqLike
abstract def seq: Seq[A]
- Definition Classes
- GenSeq → GenIterable → GenTraversable → GenSeqLike → Parallelizable → GenTraversableOnce
abstract def size: Int
Размер этой общей коллекции.
Примечание: не завершится для коллекций бесконечного размера.
- returns
количество элементов в этой общей коллекции.
- Definition Classes
- GenTraversableLike → GenTraversableOnce
abstract def slice(unc_from: Int, unc_until: Int): GenSeq[A]
Выбирает интервал элементов. Результирующая коллекция состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- unc_from
наименьший индекс для включения из этой общей коллекции.
- unc_until
наименьший индекс для ИСКЛЮЧЕНИЯ из этой общей коллекции.
- returns
общая коллекция, содержащая элементы, большие или равные индексу
from, простирающиеся до (но не включая) индексаuntilэтой общей коллекции.
- Definition Classes
- GenTraversableLike
abstract def span(pred: (A) ⇒ Boolean): (GenSeq[A], GenSeq[A])
Разделяет это общее множество на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового множества не упорядочен.
- pred
предикат проверки
- returns
пара, состоящая из самого длинного префикса этого общего множества, элементы которого удовлетворяют
p, и остальная часть этого общего множества.
- Definition Classes
- GenTraversableLike
abstract def splitAt(n: Int): (GenSeq[A], GenSeq[A])
Разделяет это общее множество на два по заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты для разных запусков, если тип базового множества не упорядочен.
- n
позиция, по которой нужно разделить.
- returns
пара общих множеств, состоящая из первых
nэлементов этого общего множества и других элементов.
- Definition Classes
- GenTraversableLike
abstract def startsWith[B](that: GenSeq[B], offset: Int): Boolean
Проверяет, содержит ли эта общая последовательность данную последовательность в заданном индексе.
Примечание: Если и получающий объект this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.
- that
тестируемая последовательность
- offset
индекс, в котором выполняется поиск последовательности.
- returns
true, если последовательностьthatсодержится в этой общей последовательности по индексуoffset, в противном случаеfalse.
- Definition Classes
- GenSeqLike
abstract def stringPrefix: String
Определяет префикс представления этого объекта toString.
- returns
строковое представление, которое начинается с результата
toString, применённого к этому общему множеству. По умолчанию строковый префикс — это простое имя класса коллекции общего множества.
- Definition Classes
- GenTraversableLike
abstract def tail: GenSeq[A]
Выбирает все элементы, кроме первого.
Примечание: может возвращать разные результаты для разных запусков, если тип базового множества не упорядочен.
- returns
общее множество, состоящее из всех элементов этого общего множества, кроме первого.
- Definition Classes
- GenTraversableLike
- Exceptions thrown
UnsupportedOperationExceptionесли общее множество пусто.
abstract def take(n: Int): GenSeq[A]
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового множества не упорядочен.
- n
количество элементов для взятия из этого общего множества.
- returns
общее множество, содержащее только первые
nэлементов этого общего множества, или же все общее множество, если оно содержит менееnэлементов. Еслиnотрицательное, возвращает пустое общее множество.
- Definition Classes
- GenTraversableLike
abstract def takeWhile(pred: (A) ⇒ Boolean): GenSeq[A]
Возвращает самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового множества не упорядочен.
- pred
Предикат для проверки элементов.
- returns
самый длинный префикс этого общего множества, элементы которого удовлетворяют предикату
p.
- Definition Classes
- GenTraversableLike
abstract def toBuffer[A1 >: A]: Buffer[A1]
Использует содержимое этой коллекции или итератора для создания нового изменяемого буфера.
Примечание: не завершится для коллекций бесконечного размера.
- returns
буфер, содержащий все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toIndexedSeq: immutable.IndexedSeq[A]
Преобразует эту коллекцию или итератор в индексированную последовательность.
Примечание: не завершится для коллекций бесконечного размера.
- returns
индексированная последовательность, содержащая все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toIterable: GenIterable[A]
Преобразует эту коллекцию или итератор в итерируемую коллекцию. Обратите внимание, что выбор целевого Iterable в этой реализации по умолчанию ленивый, так как эта TraversableOnce может быть ленивой и не вычисленной (то есть она может быть итератором, который можно пройти только один раз).
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
a
Iterableсодержащий все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toIterator: Iterator[A]
Возвращает итератор по элементам в этой коллекции или итераторе. Вернёт тот же итератор, если этот экземпляр уже является итератором.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
итератор, содержащий все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toList: List[A]
Преобразует эту коллекцию или итератор в список.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
список, содержащий все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toSeq: GenSeq[A]
Преобразует эту общую последовательность в последовательность. Как и toIterable, она ленива в этой реализации по умолчанию, так как эта TraversableOnce может быть ленивой и не вычисленной.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
последовательность, содержащая все элементы этой общей последовательности.
- Definition Classes
- GenSeqLike → GenTraversableOnce
abstract def toSet[A1 >: A]: GenSet[A1]
Преобразует эту коллекцию или итератор в множество.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
множество, содержащее все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toStream: Stream[A]
Преобразует эту коллекцию или итератор в поток.
- returns
поток, содержащий все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toTraversable: GenTraversable[A]
Преобразует эту коллекцию или итератор в неуказанное Обходное. Вернет ту же коллекцию, если этот экземпляр уже является обходным.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
Обходное, содержащее все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toVector: Vector[A]
Преобразует эту коллекцию или итератор в вектор.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
вектор, содержащий все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
Члены-значения (Concrete Value Members)
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
trueесли !(this == that), иначе false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для числовых типов возвращает значение хэша, согласованное с равенством по значению: если два экземпляра типа значения сравниваются как true, то ## вернет одинаковое значение хэша для каждого из них. Для null возвращает хэш-код, где null.hashCode выбрасывает NullPointerException.
- возвращает
значение хэша, согласованное с ==
- Definition Classes
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавляется неявным преобразованием из GenSeq[A] в any2stringadd[GenSeq[A]], выполненным методом any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
abstract def +:(elem: A): Traversable[A]
Копия коллекции с добавленным элементом в начало.
Обратите внимание, что операторы с :-окончанием являются правоассоциативными (см. пример). Мемоническая подсказка для +: против :+ заключается в том, что двоеточие идёт к стороне коллекции.
Также исходная коллекция не модифицируется, поэтому вам нужно будет сохранить результат.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = 2 +: x y: List[Int] = List(2, 1) scala> println(x) List(1)
- elem
элемент, добавляемый в начало
- возвращает
новая коллекция, состоящая из
elemи всех элементов этой коллекции.
- Definition Classes
- GenSeqLike
def ->[B](y: B): (GenSeq[A], B)
- Неявный
- Этот член добавляется неявным преобразованием из GenSeq[A] в ArrowAssoc[GenSeq[A]], выполненным методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Аннотации
- @inline()
abstract def :+(elem: A): Traversable[A]
Копия этой коллекции с добавленным элементом в конец.
Мемоническая подсказка для +: против :+ заключается в том, что двоеточие идёт к стороне коллекции.
Примечание: не будет завершаться для коллекций бесконечного размера.
Пример:
scala> val a = List(1) a: List[Int] = List(1) scala> val b = a :+ 2 b: List[Int] = List(1, 2) scala> println(a) List(1)
- elem
элемент, добавляемый в конец
- возвращает
новая коллекция, состоящая из всех элементов этой коллекции, за которыми следует
elem.
- Definition Classes
- GenSeqLike
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
final def asInstanceOf[T0]: T0
Приведение объекта-получателя к типу T0.
Обратите внимание, что успешность приведения во время выполнения обусловлена семантикой стирания Scala. Поэтому выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] нет. В последнем примере, поскольку тип аргумента стирается во время компиляции, невозможно проверить, соответствуют ли содержимое списка требуемому типу.
- возвращает
объект-получатель.
- Definition Classes
- Any
- Исключения
ClassCastException, если объект-получатель не является экземпляром стирания типаT0.
def clone(): AnyRef
abstract def collect[B](pf: PartialFunction[A, B]): Traversable[B]
Создаёт новую коллекцию, применяя частичную функцию ко всем элементам этой коллекции, для которых функция определена.
- B
тип элементов возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и отображает коллекцию.
- returns
новая коллекция, полученная путём применения заданной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- GenTraversableLike
def companion: GenericCompanion[GenSeq]
Компаньон-объект-фабрика, который создаёт экземпляры класса Traversable. (или его Iterable суперкласса, где класс Traversable не является Seq.)
- Definition Classes
- GenSeq → GenIterable → GenTraversable → GenericTraversableTemplate
abstract def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этой коллекции в массив. Заполняет данный массив xs не более чем len элементами этой коллекции, начиная с позиции start. Копирование прекратится, как только будет достигнут конец текущей коллекции, конец целевого массива или будет скопировано len элементов.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество копируемых элементов.
- Definition Classes
- GenTraversableOnce
abstract def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этой коллекции в массив. Заполняет данный массив xs значениями этой коллекции, начиная с индекса start. Копирование прекратится, как только будет достигнут конец текущей коллекции или конец целевого массива.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- Definition Classes
- GenTraversableOnce
abstract def copyToArray(xs: Array[A]): Unit
Копирует элементы этой коллекции в массив. Заполняет данный массив xs значениями этой коллекции. Копирование прекратится, как только будет достигнут конец текущей коллекции или конец целевого массива.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- Definition Classes
- GenTraversableOnce
abstract def diff(that: GenSeq[A]): Traversable[A]
Вычисляет разность мультимножеств между этой коллекцией и другой последовательностью.
Примечание: не завершится для коллекций бесконечного размера.
- that
последовательность элементов для удаления
- returns
новая коллекция, содержащая все элементы этой коллекции, за исключением некоторых вхождений элементов, которые также присутствуют в
that. Если значение элементаxвстречается n раз вthat, то первые n вхожденийxне будут частью результата, но любые последующие вхождения будут.
- Definition Classes
- GenSeqLike
def ensuring(cond: (GenSeq[A]) ⇒ Boolean, msg: ⇒ Any): GenSeq[A]
- Неявный
- Этот член добавляется неявным преобразованием из GenSeq[A] в Ensuring[GenSeq[A]] выполняемым методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (GenSeq[A]) ⇒ Boolean): GenSeq[A]
- Неявный
- Этот член добавляется неявным преобразованием из GenSeq[A] в Ensuring[GenSeq[A]] выполняемым методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): GenSeq[A]
- Неявный
- Этот член добавлен неявным преобразованием из GenSeq[A] в Ensuring[GenSeq[A]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean): GenSeq[A]
- Неявный
- Этот член добавлен неявным преобразованием из GenSeq[A] в Ensuring[GenSeq[A]] с помощью метода 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 finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.
Подробности о том, когда и если вызывается метод finalize, а также взаимодействие finalize с нелокальными возвратами и исключениями, зависят от платформы.
- Атрибуты
- protected[lang]
- Определяющие классы
- AnyRef
- Аннотации
- @throws( classOf[java.lang.Throwable] )
- Примечание
не указано SLS как член AnyRef
abstract def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Traversable[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этой коллекции и используя элементы полученных коллекций.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип результирующей коллекции определяется статическим типом коллекции. Это может иногда приводить к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap (word => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- возвращает
новая коллекция, полученная путём применения данной функции-коллекции
fк каждому элементу этой коллекции и конкатенации результатов.
- Определяющие классы
- GenTraversableLike
def flatten[B]: Traversable[B]
Преобразует эту коллекцию коллекций в коллекцию, образованную элементами этих коллекций.
Тип результирующей коллекции определяется статическим типом коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
- B
тип элементов каждой коллекции.
- возвращает
новая коллекция, полученная путём конкатенации всех коллекций-элементов.
- Определяющие классы
- GenericTraversableTemplate
abstract def foreach(f: (A) ⇒ Unit): Unit
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fигнорируется.
- Определяющие классы
- GenericTraversableTemplate
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой format. Формат строк соответствует String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавляется неявным преобразованием из GenSeq[A] в StringFormat[GenSeq[A]] выполняемым методом StringFormat в scala.Predef.
- Классы-определения
- StringFormat
- Аннотации
- @inline()
def genericBuilder[B]: Builder[B, GenSeq[B]]
Общий билдер, создающий экземпляры Traversable для произвольных типов элементов.
- Классы-определения
- GenericTraversableTemplate
final def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- возвращает
объект класса, соответствующий типу получателя во время выполнения.
def hashCode(): Int
Хешкоды для GenSeq генерируют значение из хешкодов всех элементов общего последовательности.
- возвращает
значение хешкода для этого объекта.
- Классы-определения
- GenSeqLike → Any
def indexOf(elem: A, from: Int): Int
Находит индекс первого вхождения некоторого значения в этом наборе после или на определенном стартовом индексе.
Примечание: для коллекций бесконечного размера может не завершиться.
- elem
значение элемента для поиска.
- from
стартовый индекс
- возвращает
индекс
>= fromпервого элемента этого набора, равного (как определяется==)elem, или-1, если такого нет.
- Классы-определения
- GenSeqLike
def indexOf(elem: A): Int
Находит индекс первого вхождения некоторого значения в этом наборе.
Примечание: для коллекций бесконечного размера может не завершиться.
- elem
значение элемента для поиска.
- возвращает
индекс первого элемента этого набора, равного (как определяется
==)elem, или-1, если такого нет.
- Классы-определения
- GenSeqLike
def indexWhere(p: (A) ⇒ Boolean): Int
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: для коллекций бесконечного размера может не завершиться.
- p
предикат, используемый для проверки элементов.
- возвращает
индекс первого элемента этой общей последовательности, удовлетворяющего предикату
p, или-1, если такого нет.
- Классы-определения
- GenSeqLike
abstract def intersect(that: GenSeq[A]): Traversable[A]
Вычисляет пересечение мультимножеств между этим набором и другой последовательностью.
Примечание: для коллекций бесконечного размера может не завершиться.
- that
последовательность элементов для пересечения.
- возвращает
новый набор, содержащий все элементы этого набора, которые также присутствуют в
that. Если значение элементаxпоявляется n раз вthat, то первые n вхожденийxбудут сохранены в результате, но все последующие вхождения будут пропущены.
- Классы-определения
- GenSeqLike
def isDefinedAt(idx: Int): Boolean
Проверяет, содержит ли эта общая последовательность заданный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
- idx
индекс для проверки
- возвращает
trueесли эта общая последовательность содержит элемент в позицииidx,falseв противном случае.
- Классы-определения
- GenSeqLike
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип получаемого объекта T0.
Обратите внимание, что результат теста зависит от стирания семантики Scala. Поэтому выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, содержат ли элементы списка указанный тип.
- возвращает
trueесли объект получателя является экземпляром стирания типаT0;falseв противном случае.
- Классы-определения
- Any
def lastIndexOf(elem: A, end: Int): Int
Находит индекс последнего вхождения значения в этом наборе элементов перед или на заданном индексе конца.
- elem
значение искомого элемента.
- end
индекс конца.
- returns
индекс
<= endпоследнего элемента этого набора, который равен (как определено==) элементуelem, или-1, если такового нет.
- Definition Classes
- GenSeqLike
def lastIndexOf(elem: A): Int
Находит индекс последнего вхождения некоторого значения в этом наборе элементов.
Примечание: не завершится для коллекций бесконечного размера.
- elem
значение искомого элемента.
- returns
индекс последнего элемента этого набора, который равен (как определено
==) элементуelem, или-1, если такового нет.
- Definition Classes
- GenSeqLike
def lastIndexWhere(p: (A) ⇒ Boolean): Int
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не завершится для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
индекс последнего элемента этой последовательности, удовлетворяющего предикату
p, или-1, если такового нет.
- Definition Classes
- GenSeqLike
abstract def map[B](f: (A) ⇒ B): Traversable[B]
Создает новый набор, применяя функцию ко всем элементам этого набора.
- B
тип элементов возвращаемого набора.
- f
функция, применяемая к каждому элементу.
- returns
новый набор, полученный в результате применения заданной функции
fк каждому элементу этого набора и сбора результатов.
- Definition Classes
- GenTraversableLike
abstract def max: A
Находит наибольший элемент.
- returns
наибольший элемент этого набора.
- Definition Classes
- GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот набор пуст.
abstract def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого набора с наибольшим значением, измеренным функцией f.
- Definition Classes
- GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот набор пуст.
abstract def min: A
Находит наименьший элемент.
- returns
наименьший элемент этого набора
- Definition Classes
- GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот набор пуст.
abstract def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого набора с наименьшим значением, измеренным функцией f.
- Definition Classes
- GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот набор пуст.
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- returns
true, если аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def newBuilder: Builder[A, GenSeq[A]]
Построитель, создающий экземпляры типа Traversable[A]
- Атрибуты
- protected[this]
- Классы определения
- GenericTraversableTemplate → HasNewBuilder
final def notify(): Unit
Разбуждает один поток, ожидающий монитор объекта-приемника.
- Классы определения
- AnyRef
- Аннотации
- @native()
- Примечание
не указано SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все потоки, ожидающие монитор объекта-приемника.
- Классы определения
- AnyRef
- Аннотации
- @native()
- Примечание
не указано SLS как член AnyRef
abstract def padTo(len: Int, elem: A): Traversable[A]
Копия этого набора с добавленными элементами значения, пока не будет достигнута заданная целевая длина.
- len
целевая длина
- elem
значение заполнения
- возвращает
новый набор, состоящий из всех элементов этого набора, за которым следует минимальное количество вхождений
elem, так что полученный набор имеет длину не менееlen.
- Классы определения
- GenSeqLike
def par: ParSeq[A]
Возвращает параллельную реализацию этого набора.
Для большинства типов наборов этот метод создает новый параллельный набор, копируя все элементы. Для этих наборов метод par выполняется за линейное время. Изменяемые наборы в этой категории не производят изменяемый параллельный набор, который имеет то же базовое хранилище данных, поэтому изменения в одном наборе не будут отражены в другом.
Конкретные наборы (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельный набор, который разделяет то же базовое хранилище данных. Для этих наборов par выполняется за постоянное или сублинейное время.
Все параллельные наборы возвращают ссылку на себя.
- возвращает
параллельная реализация этого набора
- Классы определения
- Parallelizable
abstract def patch(from: Int, that: GenSeq[A], replaced: Int): Traversable[A]
Создает новый набор, где часть элементов в этом наборе заменяется другим набором.
- from
индекс первого заменяемого элемента
- replaced
количество элементов для удаления в исходном наборе
- возвращает
новый набор, состоящий из всех элементов этого набора, за исключением того, что
replacedэлементов, начиная сfrom, заменяютсяpatch.
- Классы определения
- GenSeqLike
def prefixLength(p: (A) ⇒ Boolean): Int
Возвращает длину самого длинного префикса, чьи элементы удовлетворяют некоторому предикату.
Примечание: может не завершаться для наборов бесконечного размера.
- p
предикат, используемый для проверки элементов.
- возвращает
длина самого длинного префикса этого общего набора, такого что каждый элемент сегмента удовлетворяет предикату
p.
- Классы определения
- GenSeqLike
abstract def product: A
Произведение элементов этого набора.
- возвращает
произведение всех элементов в этом наборе чисел типа
Int. ВместоInt, любой другой типTс неявнойNumeric[T]реализацией может использоваться в качестве типа элемента набора и в качестве типа результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Классы определения
- GenTraversableOnce
abstract def reverseMap[B](f: (A) ⇒ B): Traversable[B]
Строит новый набор, применяя функцию ко всем элементам этого набора и собирая результаты в обратном порядке.
Примечание: не завершится для наборов бесконечного размера.
Примечание: xs.reverseMap(f) эквивалентно xs.reverse.map(f), но может быть более эффективным.
- B
тип элемента возвращаемого набора.
- f
функция, применяемая к каждому элементу.
- возвращает
новый набор, полученный путем применения данной функции
fк каждому элементу этого набора и сбора результатов в обратном порядке.
- Классы определения
- GenSeqLike
abstract def sameElements(that: GenIterable[A]): Boolean
Проверяет, содержит ли другая итерируемая коллекция те же элементы в том же порядке, что и эта коллекция.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
Примечание: не завершит работу для коллекций бесконечного размера.
- that
коллекция для сравнения.
- returns
true, если обе коллекции содержат одинаковые элементы в том же порядке,falseв противном случае.
- Definition Classes
- GenIterableLike
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если его можно вычислить без значительных затрат
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер нельзя определить без значительных затрат
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def startsWith[B](that: GenSeq[B]): Boolean
Проверяет, начинается ли эта последовательность с заданной последовательности.
- that
последовательность для проверки
- returns
trueесли эта коллекция имеетthatв качестве префикса,falseв противном случае.
- Definition Classes
- GenSeqLike
abstract def sum: A
Суммирует элементы этой коллекции.
- returns
сумма всех элементов в этой коллекции чисел типа
Int. ВместоInt, любой другой типTс неявнымNumeric[T]реализацией может использоваться в качестве типа элементов коллекции и как тип результатаsum. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
abstract def to[Col[_]]: Col[A]
Преобразует эту коллекцию в другую, копируя все элементы.
Примечание: не завершит работу для коллекций бесконечного размера.
- Col
Тип коллекции для построения.
- returns
новая коллекция, содержащая все элементы этой коллекции.
- Definition Classes
- GenTraversableOnce
abstract def toArray: Array[A]
Преобразует эту коллекцию в массив.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
массив, содержащий все элементы этой коллекции. Для типа элементов этой коллекции должен быть доступен
ClassTag.
- Definition Classes
- GenTraversableOnce
abstract def toMap[T, U]: Map[T, U]
Преобразует эту коллекцию в карту. Этот метод недоступен, если элементы не являются членами Tuple2, причём каждый ((T, U)) становится парой ключ-значение в карте. Повторяющиеся ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, то какой ключ попадет в результирующую карту не определено.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
карта типа
immutable.Map[T, U]содержащая все пары ключ/значение типа(T, U)этой коллекции.
- Definition Classes
- GenTraversableOnce
def toParArray: ParArray[T]
- Implicit
- Этот член добавлен неявным преобразованием из GenSeq[A] в CollectionsHaveToParArray[GenSeq[A], T] выполненным методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование произойдёт только если в области видимости есть неявное значение типа (GenSeq[A]) ⇒ GenTraversableOnce[T].
- Definition Classes
- CollectionsHaveToParArray
def toString(): String
Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, "@" и хэш-кода объекта в шестнадцатеричном формате.
- returns
строковое представление объекта.
- Definition Classes
- AnyRef → Any
def transpose[B](implicit asTraversable: (A) ⇒ GenTraversableOnce[B]): GenSeq[GenSeq[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-м столбцом этой коллекции.
- Definition Classes
- GenericTraversableTemplate
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0)
transposeвызываетIllegalArgumentExceptionесли коллекции не имеют одинаковый размер.- Exceptions thrown
IllegalArgumentExceptionесли все коллекции в этой коллекции не имеют одинаковый размер.
def union(that: GenSeq[A]): Traversable[A]
Создает новую последовательность, которая содержит все элементы этой коллекции и также все элементы заданной последовательности. xs union ys эквивалентно xs ++ ys.
Другой способ выразить это заключается в том, что xs union ys вычисляет сохраняющую порядок объединение множеств xs и ys. union является поэтому аналогом diff и intersect которые также работают с множествами.
Примечание: не будет завершаться для бесконечных коллекций.
- that
последовательность для добавления.
- returns
новая коллекция, которая содержит все элементы этой коллекции, за которыми следуют все элементы
that.
- Definition Classes
- GenSeqLike
def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (GenSeq[A1], GenSeq[A2])
Преобразует эту коллекцию пар в две коллекции первой и второй половины каждой пары.
val xs = Traversable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three))
- A1
тип первой половины пар элементов
- A2
тип второй половины пар элементов
- asPair
явное преобразование, которое утверждает, что тип элемента этой коллекции является парой.
- returns
пара коллекций, содержащая первую, соответственно вторую половину каждой пары элементов этой коллекции.
- Definition Classes
- GenericTraversableTemplate
def unzip3[A1, A2, A3](implicit asTriple: (A) ⇒ (A1, A2, A3)): (GenSeq[A1], GenSeq[A2], GenSeq[A3])
Преобразует эту коллекцию троек в три коллекции первого, второго и третьего элемента каждой тройки.
val xs = Traversable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three),
// Traversable(1, 2, 3))
- A1
тип первого члена троек элементов
- A2
тип второго члена троек элементов
- A3
тип третьего члена троек элементов
- asTriple
явное преобразование, которое утверждает, что тип элемента этой коллекции является тройкой.
- returns
тройка коллекций, содержащая первый, второй, соответственно третий член каждой тройки элементов этой коллекции.
- Definition Classes
- GenericTraversableTemplate
abstract def updated(index: Int, elem: A): Traversable[A]
Копия этой коллекции с одним измененным элементом.
- index
позиция замены
- elem
элемент замены
- returns
копия этой коллекции с элементом на позиции
indexзаменённым наelem.
- Definition Classes
- GenSeqLike
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
abstract def zip[B](that: GenIterable[B]): Traversable[(A, B)]
Возвращает коллекцию, образованную из этой коллекции и другой коллекции итерабельных элементов, объединяя соответствующие элементы парами. Если одна из двух коллекций длиннее другой, её оставшиеся элементы игнорируются.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип второй половины возвращаемых пар
- that
Итератор, предоставляющий вторую половину каждой пары результата
- returns
новая коллекция, содержащая пары, состоящие из соответствующих элементов этой коллекции и
that. Длина возвращаемой коллекции — это минимум из длин этой коллекции иthat.
- Definition Classes
- GenIterableLike
abstract def zipAll[B](that: Iterable[B], thisElem: A, thatElem: B): Traversable[(A, B)]
Возвращает коллекцию, образованную из этой коллекции и другой коллекции итерабельных элементов, объединяя соответствующие элементы парами. Если одна из двух коллекций короче другой, для расширения короче коллекции до длины более длинной используется элемент-заполнитель.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип второй половины возвращаемых пар
- that
Итератор, предоставляющий вторую половину каждой пары результата
- thisElem
элемент, используемый для заполнения результата, если эта коллекция короче
that.- thatElem
элемент, используемый для заполнения результата, если
thatкороче этой коллекции.- returns
новая коллекция, содержащая пары, состоящие из соответствующих элементов этой коллекции и
that. Длина возвращаемой коллекции — это максимальная из длин этой коллекции иthat. Если эта коллекция корочеthat, для заполнения результата используются значенияthisElem. Еслиthatкороче этой коллекции, для заполнения результата используются значенияthatElem.
- Definition Classes
- GenIterableLike
abstract def zipWithIndex: Traversable[(A, Int)]
Объединяет эту коллекцию с её индексами.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
новая коллекция, содержащая пары, состоящие из всех элементов этой коллекции, соединённых с их индексом. Индексы начинаются с
0.
- Definition Classes
- GenIterableLike
List("a", "b", "c").zipWithIndex = List(("a", 0), ("b", 1), ("c", 2))
def →[B](y: B): (GenSeq[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из GenSeq[A] в ArrowAssoc[GenSeq[A]] с помощью метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/GenSeq.html
A trait for all sequences which may possibly have their operations implemented in parallel.
2.9