Класс AbstractSeq.AbstractSeq
Явное создание экземпляра Seq для уменьшения размера файла класса в подклассах.
| Суперопределения | 20 типов |
|---|---|
| Известные подтипы | 19 типов |
Унаследованные методы
Исходный код
final def ++[B >: A](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
| Унаследовано от | IterableOps |
|---|
Исходный код
final override def ++:[B >: A](prefix: IterableOnce[B]): CC[B]
Псевдоним для prependedAll
| Определяющие классы | SeqOps -> IterableOps |
|---|---|
| Унаследовано от | SeqOps |
Исходный код
final def +:[B >: A](elem: B): CC[B]
Псевдоним для prepended.
Обратите внимание, что операторы с окончанием «:» являются правоассоциативными (см. пример). Мемоническое правило для +: против :+: двоеточие ставится со стороны коллекции.
| Унаследовано от | SeqOps |
|---|
Исходный код
final def :+[B >: A](elem: B): CC[B]
Псевдоним для appended
Обратите внимание, что операторы с окончанием «:» являются правоассоциативными (см. пример). Мемоническое правило для +: против :+: двоеточие ставится со стороны коллекции.
| Унаследовано от | SeqOps |
|---|
Исходный код
final def :++[B >: A](suffix: IterableOnce[B]): CC[B]
Псевдоним для appendedAll
| Унаследовано от | SeqOps |
|---|
Исходный код
Добавляет все элементы этой коллекции в строку-построитель. Записываемый текст состоит из строковых представлений (согласно методу 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
| Параметры значений |
|
|---|---|
| Возвращаемое значение | строковый буфер |
| Унаследовано от | IterableOnceOps |
Исходный код
Добавляет все элементы этой коллекции в строковый буфер с использованием разделительной строки. Записываемый текст состоит из строковых представлений (согласно методу 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
| Параметры значений |
|
|---|---|
| Возвращаемое значение | строковый буфер |
| Унаследовано от | IterableOnceOps |
Исходный код
Добавляет все элементы этой коллекции в строковый буфер, используя начальную, конечную и разделительные строки. Записываемый текст начинается со строки start и заканчивается строкой end. Внутри строковые представления (согласно методу toString) всех элементов этой коллекции разделены строкой sep.
Пример:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
| Параметры значений |
|
|---|---|
| Возвращаемое значение | строковый буфер |
| Унаследовано от | IterableOnceOps |
Исходный код
Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt для результирующей частичной функции может применить первую частичную функцию и выполнить её побочное действие. Для эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, суженной другими частичными функциями, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Исходный код
override def andThen[C](k: A => C): PartialFunction[A, C]
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип функции во время выполнения является PartialFunction, используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, возможно, суженной заданной функцией, которая отображает аргументы |
| Классы определения | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Исходный код
def appended[B >: A](elem: B): CC[B]
Копия этой последовательности с добавленным элементом.
Примечание: не завершит работу для бесконечных коллекций.
Пример:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за которыми следуют |
| Унаследовано от | SeqOps |
Исходный код
def appendedAll[B >: A](suffix: IterableOnce[B]): CC[B]
Возвращает новую последовательность, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элемента последовательности — наиболее общий суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая коллекция типа |
| Унаследовано от | SeqOps |
Исходный код
Получение элемента по указанному индексу. Эта операция предоставляется для удобства в Seq. Не следует полагаться на ее эффективность, если у вас нет IndexedSeq.
| Унаследовано от | SeqOps |
|---|
Исходный код
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. Это может привести к улучшению производительности и более предсказуемому поведению в отношении побочных эффектов.
| Параметры значения |
|
|---|---|
| Возвращает | результат применения этой функции или функции обратного вызова. |
| Унаследовано от | PartialFunction |
Исходный код
Метод, который должен вызываться из каждой хорошо спроектированной функции equals, которая может быть переопределена в подклассе. См. Programming in Scala, Chapter 28 для обсуждения и проектирования.
| Параметры значения |
|
|---|---|
| Возвращает | true, если этот экземпляр может быть равен |
| Унаследовано от | Seq |
Исходный код
override def clone(): C
Создаёт копию объекта-приёмника.
Значение по умолчанию для метода clone зависит от платформы.
| Возвращает | копию объекта-приёмника. |
|---|---|
| Примечание | не указано в SLS как член AnyRef |
| Классы определения | SeqOps -> Cloneable -> Object |
| Унаследовано от | SeqOps |
Исходный код
def collect[B](pf: PartialFunction[A, B]): CC[B]
Создаёт новую итерируемую коллекцию, применяя частичную функцию ко всем элементам этой итерируемой коллекции, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения заданной частичной функции |
| Унаследовано от | IterableOps |
Исходный код
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет её к нему.
Примечание: может не завершаться для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение Option, содержащее результат применения pf к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Итерация по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке. Таким образом, "xy" и "yy" являются комбинациями длины 2 для "xyy", но "yx" — нет. Если есть несколько способов сгенерировать одну и ту же подпоследовательность, будет возвращена только одна.
Например, "xyyy" имеет три разных способа сгенерировать "xy" в зависимости от того, выбран ли первый, второй или третий "y". Однако, поскольку все они идентичны, будет выбран только один. Какой из трех будет взят, является деталью реализации, которая не определена.
Примечание: даже при применении к представлению или ленивому набору он всегда будет принудительно использовать элементы.
| Возвращает | Итератор, который проходит по возможным комбинациям из n элементов этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Источник
Компонует другую частичную функцию k с этой частичной функцией так, чтобы эта частичная функция применялась к результатам k.
Обратите внимание, что вызов isDefinedAt на результирующей частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения другой частичной функции, суженной этой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
Компонует две инстанции Function1 в новую Function1, при этом эта функция применяется последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Источник
final override def concat[B >: A](suffix: IterableOnce[B]): CC[B]
Возвращает новую последовательность, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов последовательности — это наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, содержащая все элементы этой последовательности, за которыми следуют все элементы |
| Классы определений | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Источник
Проверяет, содержит ли эта последовательность заданное значение в качестве элемента.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Проверяет, содержит ли эта последовательность заданную последовательность в качестве фрагмента.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование прекращается, как только скопированы все элементы этой коллекции, достигнут конец массива или скопировано len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование неопределено и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекращается, как только скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование неопределено и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекращается, как только скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование неопределено и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент итератора этой коллекции соответствующему элементу другой коллекции, удовлетворяя предикату проверки.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, связаны ли все элементы этой последовательности с соответствующими элементами другой последовательности, удовлетворяя условию предиката.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Подсчитывает количество элементов в коллекции, удовлетворяющих предикату.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Источник
Вычисляет разность мультимножеств между этой последовательностью и другой последовательностью.
| Параметры значения |
|
|---|---|
| Возвращает | новая последовательность, содержащая все элементы этой последовательности, за исключением некоторых вхождений элементов, которые также присутствуют в |
| Унаследовано от | SeqOps |
Источник
def distinct: C
Выбирает все элементы этой последовательности, игнорируя дубликаты.
| Возвращает | новая последовательность, содержащая все элементы этой последовательности без дубликатов. |
|---|---|
| Унаследовано от | SeqOps |
Источник
def distinctBy[B](f: A => B): C
Выбирает все элементы этой последовательности, игнорируя дубликаты, определенные по == после применения преобразующей функции f.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, содержащая все элементы этой последовательности без дубликатов. |
| Унаследовано от | SeqOps |
Источник
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, кроме первых |
| Унаследовано от | IterableOps |
Source
Выбирает все элементы, кроме последних n.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме последних |
| Унаследовано от | IterableOps |
Source
Удаляет самую длинную префиксную часть элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный суффикс этой итерируемой коллекции, первый элемент которой не удовлетворяет предикату |
| Унаследовано от | IterableOps |
Source
def elementWise: ElementWiseExtractor[A, B]
Возвращает объект экстрактора с методом unapplySeq, который извлекает каждый элемент данных последовательности.
| Пример |
val firstChar: String => Option[Char] = _.headOption
Seq("foo", "bar", "baz") match {
case firstChar.unlift.elementWise(c0, c1, c2) =>
println(s"$c0, $c1, $c2") // Output: f, b, b
}
|
|---|---|
| Унаследовано от | PartialFunction |
Source
override def empty: CC[A]
Пустая итерируемая коллекция того же типа, что и эта итерируемая коллекция
| Возвращает | пустая итерируемая коллекция типа |
|---|---|
| Классы определения | IterableFactoryDefaults -> IterableOps |
| Унаследовано от | IterableFactoryDefaults |
Source
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Source
Универсальный метод равенства, определенный в AnyRef.
| Классы определения | Seq -> Equals -> Any |
|---|---|
| Унаследовано от | Seq |
Source
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые удовлетворяют заданному предикату |
| Унаследовано от | IterableOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Унаследовано от | IterableOps |
Source
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой существует.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее первый элемент в коллекции, который удовлетворяет |
| Унаследовано от | IterableOnceOps |
Source
Находит последний элемент последовательности, удовлетворяющий предикату, если таковой существует.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее последний элемент в последовательности, который удовлетворяет |
| Унаследовано от | SeqOps |
Source
def flatMap[B](f: A => IterableOnce[B]): CC[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: String) => 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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новый итерируемый набор данных, полученный в результате применения заданной функции, возвращающей набор данных |
| Унаследовано от | IterableOps |
Источник
def flatten[B](implicit asIterable: A => IterableOnce[B]): CC[B]
Преобразует этот итерируемый набор данных из наборов данных traversable в итерируемый набор данных, образованный элементами этих наборов данных traversable.
Тип результирующего набора данных будет определяться типом итерируемого набора данных. Например:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новый итерируемый набор данных, полученный в результате конкатенации всех итерируемых наборов данных элементов. |
| Унаследовано от | IterableOps |
Источник
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
Складывает элементы этого набора данных, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
Примечание: не будет завершаться для наборов данных бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат применения оператора fold |
| Унаследовано от | IterableOnceOps |
Источник
def foldLeft[B](z: B)(op: (B, A) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этого набора данных слева направо.
Примечание: не будет завершаться для наборов данных бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора данных не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
def foldRight[B](z: B)(op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этого набора данных и начальному значению, справа налево.
Примечание: не будет завершаться для наборов данных бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора данных не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершиться для наборов бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в инференции типов scalac.
| Унаследовано от | IterableOnceOps |
|---|
Источник
protected def fromSpecific(coll: IterableOnce[A]): CC[A]
Определяет, как преобразовать заданный Iterable[A] в коллекцию типа C.
Этот процесс может выполняться строго или нестрого (то есть без вычисления элементов результирующих коллекций). Другими словами, этот метод определяет модель вычисления коллекции.
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как показывает аннотация |
|---|---|
| Унаследовано от | IterableFactoryDefaults |
Источник
Разбивает эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно вычислять элементы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
Карта от ключей к итерируемым коллекциям, при этом выполняется следующее инвариантное условие: (xs groupBy f)(k) = xs filter (x => f(x) == k) То есть, каждый ключ |
| Унаследовано от | IterableOps |
Источник
Разбивает эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором key. Каждый элемент в группе преобразуется в значение типа B с помощью функции value.
Это эквивалентно groupBy(key).mapValues(_.map(f)), но более эффективно.
case class User(name: String, age: Int) def namesByAge(users: Seq[User]): Map[Int, Seq[String]] = users.groupMap(_.age)(_.name)
Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно вычислять элементы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Унаследовано от | IterableOps |
Источник
def groupMapReduce[K, B](key: A => K)(f: A => B)(reduce: (B, B) => B): Map[K, B]
Разбивает эту итерируемую коллекцию на карту в соответствии с функцией-дискриминатором key. Все значения, имеющие одинаковый дискриминатор, затем преобразуются функцией f и затем сводятся к одному значению с помощью функции reduce.
Это эквивалентно groupBy(key).mapValues(_.map(f).reduce(reduce)), но более эффективно.
def occurrences[A](as: Seq[A]): Map[A, Int] = as.groupMapReduce(identity)(_ => 1)(_ + _)
Примечание: Даже при применении к представлению или ленивому набору он всегда принудительно выполнит элементы.
| Унаследовано от | IterableOps |
|---|
Источник
Разделяет элементы в наборах итераций фиксированного размера.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий наборы итераций размером |
| См. также | scala.collection.Iterator, метод |
| Унаследовано от | IterableOps |
Источник
Вычисляет значение хэш-кода для объекта.
Алгоритм хэширования по умолчанию зависит от платформы.
Обратите внимание, что для двух объектов могут быть идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)) но они могут не быть равны (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true) у них были идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому, при переопределении этого метода, убедитесь, что поведение согласуется с методом equals.
| Возвращает | значение хэш-кода для этого объекта. |
|---|---|
| Классы определений | Seq -> Any |
| Унаследовано от | Seq |
Источник
def head: A
Выбирает первый элемент этого набора итераций.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Возвращает | первый элемент этого набора итераций. |
|---|---|
| Исключения |
|
| Унаследовано от | IterableOps |
Источник
def headOption: Option[A]
Выбирает первый элемент с использованием опции.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Возвращает | первый элемент этого набора итераций, если он не пустой, |
|---|---|
| Унаследовано от | IterableOps |
Источник
Находит индекс первого вхождения значения в эту последовательность.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого вхождения некоторого значения в этой последовательности после или на определенном начальном индексе.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: для бесконечных коллекций может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс после или на начальном индексе, где эта последовательность содержит заданную последовательность в качестве среза.
Примечание: для бесконечных коллекций может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: для бесконечных коллекций может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на определенном начальном индексе.
Примечание: для бесконечных коллекций может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Создает диапазон всех индексов этой последовательности.
Примечание: даже при применении к представлению или ленивой коллекции она всегда принудительно вычисляет элементы.
| Возвращает | значение |
|---|---|
| Унаследовано от | SeqOps |
Source
def init: C
Начальная часть коллекции без её последнего элемента.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно созданы.
| Унаследовано от | IterableOps |
|---|
Исходный код
Перебирает начальные части этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений init.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно созданы.
| Возвращает | итератор по всем начальным частям этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
Вычисляет пересечение мультимножеств между этой последовательностью и другой последовательностью.
| Параметры |
|
|---|---|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, которые также присутствуют в |
| Унаследовано от | SeqOps |
Исходный код
Проверяет, содержит ли эта последовательность данный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
| Параметры |
|
|---|---|
| Возвращает | true, если эта последовательность содержит элемент в позиции |
| Унаследовано от | SeqOps |
Исходный код
Проверяет, является ли последовательность пустой.
Примечание: Реализации в подклассах, которые не являются многократно итерируемыми, должны позаботиться о том, чтобы не потреблять элементы, когда isEmpty вызывается.
| Возвращает | true, если последовательность не содержит элементов, false в противном случае. |
|---|---|
| Определяющие классы | SeqOps -> IterableOnceOps |
| Унаследовано от | SeqOps |
Исходный код
override def isTraversableAgain: Boolean
Проверяет, может ли эта итерируемая коллекция быть многократно перебрана. Всегда true для Iterables и false для Iterators, если не переопределено.
| Возвращает | true, если она многократно перебираемая, false в противном случае. |
|---|---|
| Определяющие классы | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Исходный код
Объект-компаньон этой изменяемой последовательности, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Классы определения | Seq -> Seq -> Iterable -> Iterable -> IterableOps |
| Унаследовано от | Seq |
Источник
Итератор может быть использован только один раз
| Унаследовано от | IterableOnce |
|---|
Источник
| Возвращает | Количество элементов в этой коллекции, если его можно вычислить быстро, иначе -1. Быстро обычно означает: Не требует обхода коллекции. |
|---|---|
| Унаследовано от | IterableOnce |
Источник
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | Последний элемент этой итерируемой коллекции. |
|---|---|
| Выбрасывает |
|
| Унаследовано от | IterableOps |
Источник
Находит индекс последнего вхождения некоторого значения в этой последовательности до или в заданном индексе конца.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Находит последний индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс, такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности |
| Унаследовано от | SeqOps |
Источник
Находит последний индекс до или на заданном индексе конца, где эта последовательность содержит заданную последовательность в виде среза.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс |
| Унаследовано от | SeqOps |
Источник
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс последнего элемента этой последовательности, удовлетворяющего предикату |
| Унаследовано от | SeqOps |
Источник
Находит индекс последнего элемента, удовлетворяющего некоторому предикату до или в заданном индексе конца.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
def lastOption: Option[A]
Выбирает последний элемент необязательно.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | последний элемент этой итерируемой коллекции$ если она непустая, |
|---|---|
| Унаследовано от | IterableOps |
Источник
Аналогично zip за исключением того, что элементы в каждой коллекции не потребляются до тех пор, пока не будет вызвано строгое действие над возвращаемым LazyZip2 декоратором.
Вызовы lazyZip могут быть объединены для поддержки более высоких арифметических значений (до 4) без дополнительных расходов на создание и деструктуризацию промежуточных кортежей.
val xs = List(1, 2, 3) val res = (xs lazyZip xs lazyZip xs lazyZip xs).map((a, b, c, d) => a + b + c + d) // res == List(4, 8, 12)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | декоратор |
| Унаследовано от | Iterable |
Источник
Длина (количество элементов) последовательности. size является псевдонимом для length в коллекциях Seq.
| Унаследовано от | SeqOps |
|---|
Источник
Сравнивает длину этой последовательности с размером другой Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < that.size x == 0 if this.length == that.size x > 0 if this.length > that.size Метод, как реализован здесь, не вызывает |
| Унаследовано от | SeqOps |
Source
Сравнивает длину этой последовательности со значением-тестом.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len Метод, как реализован здесь, не вызывает |
| См. также | |
| Унаследовано от | SeqOps |
Source
final def lengthIs: SizeCompareOps
Возвращает экземпляр класса со значениями, содержащими операции для сравнения длины этой последовательности со значением-тестом.
Эти операции реализованы в терминах lengthCompare(Int) и позволяют использовать следующие более удобочитаемые варианты:
this.lengthIs < len // this.lengthCompare(len) < 0 this.lengthIs <= len // this.lengthCompare(len) <= 0 this.lengthIs == len // this.lengthCompare(len) == 0 this.lengthIs != len // this.lengthCompare(len) != 0 this.lengthIs >= len // this.lengthCompare(len) >= 0 this.lengthIs > len // this.lengthCompare(len) > 0
| Унаследовано от | SeqOps |
|---|
Source
Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.
| Возвращает | функцию, которая принимает аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Source
def map[B](f: A => B): CC[B]
Создаёт новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения данной функции |
| Унаследовано от | IterableOps |
Source
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этой коллекции относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этого набора с наибольшим значением, измеренным функцией f относительно порядка |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение option, содержащее первый элемент этого набора с наибольшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наибольший элемент.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение option, содержащее наибольший элемент этого набора относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этого набора относительно порядка |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершится для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | значение Option, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | значение Option, содержащее наименьший элемент этого набора относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке.
Делегирует addString, который может быть переопределён.
| Возвращаемое значение | строковое представление этой коллекции. В результирующей строке строковые представления (с использованием метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке с использованием разделительной строки.
Делегирует addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | строковое представление этой коллекции. В результирующей строке строковые представления (с использованием метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке, используя начальную, конечную и разделительные строки.
Делегирует addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | строковое представление этой коллекции. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
protected def newSpecificBuilder: Builder[A, CC[A]]
| Возвращаемое значение | строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, scala.collection.View или scala.collection.immutable.LazyList) реализация этого метода возможна, но результирующий |
|---|---|
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как показывает аннотация |
| Унаследовано от | IterableFactoryDefaults |
Источник
Проверяет, не пуста ли коллекция.
| Возвращаемое значение |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Компонует эту частичную функцию с резервной частичной функцией, которая применяется в тех случаях, когда эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | частичная функция, область определения которой является объединением областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Источник
Копия этой последовательности с добавленными элементами до достижения заданной длины.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая последовательность, состоящая из всех элементов этой последовательности, за которыми следует минимальное количество вхождений |
| Унаследовано от | SeqOps |
Источник
Пара, содержащая, во-первых, все элементы, удовлетворяющие предикату p, и, во-вторых, все элементы, которые не удовлетворяют ему. Позволяет разделить коллекцию на две части.
Указанная здесь реализация требует двух проходов по коллекции. Строгие коллекции имеют переопределенный метод partition в StrictOptimizedIterableOps, который требует только одного прохода.
| Унаследовано от | IterableOps |
|---|
Источник
def partitionMap[A1, A2](f: A => Either[A1, A2]): (CC[A1], CC[A2])
Применяет функцию f к каждому элементу итерируемой коллекции и возвращает пару итерируемых коллекций: первая содержит те значения, возвращённые функцией f, которые были обернуты в scala.util.Left, а вторая — те, которые были обернуты в scala.util.Right.
Пример:
val xs = Iterable(1, "one", 2, "two", 3, "three") partitionMap {
case i: Int => Left(i)
case s: String => Right(s)
}
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | пара итерируемых коллекций: первая состоит из значений, возвращённых |
| Унаследовано от | IterableOps |
Источник
Создаёт новую последовательность, где фрагмент элементов в этой последовательности заменяется другой последовательностью.
Замена по отрицательным индексам эквивалентна замене, начинающейся с 0. Замена по индексам, равным или большим длины исходной последовательности, добавляет вставку в конец. Если количество заменяемых элементов больше, чем фактически существующих, избыток игнорируется.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новую последовательность, состоящую из всех элементов этой последовательности, за исключением того, что |
| Унаследовано от | SeqOps |
Источник
def permutations: Iterator[C]
Итерация по различным перестановкам.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | Итератор, который проходит по различным перестановкам этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Источник
def prepended[B >: A](elem: B): CC[B]
Копия последовательности с добавленным элементом в начало.
Также, исходная последовательность не изменяется, поэтому вам нужно будет сохранить результат.
Пример:
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)
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новая последовательность, состоящая из |
| Унаследовано от | SeqOps |
Источник
def prependedAll[B >: A](prefix: IterableOnce[B]): CC[B]
Как и :++, возвращает новую коллекцию, содержащую элементы левого операнда, за которыми следуют элементы правого операнда.
Отличается от :++ тем, что тип результирующей коллекции определяется правым операндом, а не левым. Мемоническая подсказка: знак ДВОЕТОЧИЯ стоит с той стороны, где новый тип КОЛЛЕКЦИИ.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новая последовательность, которая содержит все элементы |
| Унаследовано от | SeqOps |
Источник
Произведение элементов этой коллекции.
Примечание: не завершится для бесконечных коллекций.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | произведение всех элементов этой коллекции относительно операции |
| Унаследовано от | IterableOnceOps |
Источник
def reduce[B >: A](op: (B, B) => B): B
Сводит элементы этой коллекции, используя указанную ассоциативную бинарную операцию.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат применения операции reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceLeft[B >: A](op: (B, A) => B): B
Применяет бинарную операцию ко всем элементам этой коллекции слева направо.
Примечание: не завершится для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или операция не ассоциативна и коммутативна.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]
Необязательное применение бинарной операции ко всем элементам этой коллекции слева направо.
Примечание: не завершится для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или операция не ассоциативна и коммутативна.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение типа Option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
def reduceOption[B >: A](op: (B, B) => B): Option[B]
Сведение элементов этой коллекции, если они есть, с использованием указанной ассоциативной бинарной операции.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение типа Option, содержащее результат применения операции reduce |
| Унаследовано от | IterableOnceOps |
Source
def reduceRight[B >: A](op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции, двигаясь справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
Опционально применяет бинарный оператор ко всем элементам этой коллекции, двигаясь справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащее результат |
| Унаследовано от | IterableOnceOps |
Source
def reverse: C
Возвращает новую последовательность с элементами в обратном порядке.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | Новая последовательность со всеми элементами этой последовательности в обратном порядке. |
|---|---|
| Унаследовано от | SeqOps |
Source
def reverseIterator: Iterator[A]
Итератор, возвращающий элементы в обратном порядке.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: xs.reverseIterator эквивалентно xs.reverse.iterator, но может быть более эффективным.
| Возвращает | итератор, возвращающий элементы этой последовательности в обратном порядке |
|---|---|
| Унаследовано от | SeqOps |
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
Комбинирует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для побочных эффектов; ее результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализовано через applyOrElse и, следовательно, потенциально более эффективно. Использование runWith позволяет избежать двойной оценки совпадений шаблонов и условий для литералов частичной функции.
| Параметры значения |
|
|---|---|
| Возвращает | функция, которая отображает аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Source
Являются ли элементы этой коллекции такими же (и в том же порядке), как и элементы that?
| Унаследовано от | SeqOps |
|---|
Source
def scan[B >: A](z: B)(op: (B, B) => B): CC[B]
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерабельная коллекция, содержащая префиксное сканирование элементов в этой итерабельной коллекции |
| Унаследовано от | IterableOps |
Source
def scanLeft[B](z: B)(op: (B, A) => B): CC[B]
Создает итерабельную коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если базовый тип коллекции не упорядочен.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Унаследовано от | IterableOps |
Source
def scanRight[B](z: B)(op: (A, B) => B): CC[B]
Создает коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если базовый тип коллекции не упорядочен.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Унаследовано от | IterableOps |
Source
Поиск в интервале в этой отсортированной последовательности заданного элемента. Если эта последовательность является IndexedSeq, используется двоичный поиск. В противном случае используется линейный поиск.
Последовательность должна быть отсортирована с использованием того же Ordering перед вызовом; в противном случае результаты неопределенны.
| Параметры значения |
|
|---|---|
| Возвращает | значение |
| См. также |
scala.collection.SeqOps, метод |
| Примечание | если |
| Унаследовано от | SeqOps |
Исходный код
Поиск заданного элемента в этой отсортированной последовательности. Если последовательность является IndexedSeq, используется двоичный поиск. В противном случае используется линейный поиск.
Последовательность должна быть отсортирована с использованием того же Ordering перед вызовом; в противном случае результаты не определены.
| Параметры значения |
|
|---|---|
| Возвращает | значение |
| См. также |
scala.collection.SeqOps, метод |
| Унаследовано от | SeqOps |
Исходный код
Вычисляет длину самой длинной последовательности, начинающейся с определенного индекса и содержащей элементы, удовлетворяющие некоторому предикату.
Примечание: может не завершаться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает | длину самой длинной последовательности этой последовательности, начинающейся с индекса |
| Унаследовано от | SeqOps |
Исходный код
Вычисляет длину самой длинной последовательности, начинающейся с первого элемента и содержащей элементы, удовлетворяющие некоторому предикату.
Примечание: может не завершаться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает | длину самой длинной последовательности этой последовательности, начинающейся с первого элемента, в которой каждый элемент удовлетворяет предикату |
| Унаследовано от | SeqOps |
Исходный код
Размер этой последовательности.
Примечание: не завершится для бесконечных коллекций.
| Возвращает | количество элементов в этой последовательности. |
|---|---|
| Определяющие классы | SeqOps -> IterableOnceOps |
| Унаследовано от | SeqOps |
Исходный код
Сравнивает размер этой последовательности с размером другой Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Реализация метода здесь не вызывает |
| Определяющие классы | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Источник
Сравнивает размер этой последовательности со значением проверки.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Реализация метода здесь не вызывает |
| См. также | |
| Определяющие классы | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Источник
final def sizeIs: SizeCompareOps
Возвращает класс значений, содержащий операции для сравнения размера этой коллекции итерируемых данных со значением проверки.
Эти операции реализованы в терминах sizeCompare(Int), и позволяют использовать следующие более читаемые варианты:
this.sizeIs < size // this.sizeCompare(size) < 0 this.sizeIs <= size // this.sizeCompare(size) <= 0 this.sizeIs == size // this.sizeCompare(size) == 0 this.sizeIs != size // this.sizeCompare(size) != 0 this.sizeIs >= size // this.sizeCompare(size) >= 0 this.sizeIs > size // this.sizeCompare(size) > 0
| Унаследовано от | IterableOps |
|---|
Источник
Выбирает интервал элементов. Возвращаемая итерируемая коллекция состоит из всех элементов x которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемая коллекция, содержащая элементы, большие или равные индексу |
| Унаследовано от | IterableOps |
Источник
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" над ними (в отличие от их разбиения, как в grouped).
Возвращаемый итератор будет пустым при вызове на пустой коллекции. Последний элемент, который генерирует итератор, может быть меньше размера окна, если исходная коллекция не исчерпана окном до его конца и его последний элемент не пропущен шагом перед ним.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Source
Группирует элементы в блоки фиксированного размера, перемещая «скользящее окно» по ним (в отличие от разбиения, как в grouped).
Пустой коллекцией возвращается пустой итератор, а для непустой коллекции, содержащей меньше элементов, чем размер окна, возвращается итератор, который будет производить исходную коллекцию в качестве единственного элемента.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Source
Сортирует эту последовательность в соответствии с упорядочиванием, полученным из преобразования неявного упорядочивания с помощью функции преобразования.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
Сортировка устойчива. То есть элементы, равные (как определяется ord.compare), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | последовательность, состоящую из элементов этой последовательности, отсортированных в соответствии с упорядочением, где |
| См. также | |
| Пример |
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)
|
| Унаследовано от | SeqOps |
Source
Сортирует эту последовательность в соответствии с функцией сравнения.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
Сортировка устойчива. То есть элементы, равные (как определяется lt), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, состоящую из элементов этой последовательности, отсортированных в соответствии с функцией сравнения |
| Пример |
List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
List("Bob", "John", "Steve", "Tom")
|
| Унаследовано от | SeqOps |
Source
Сортирует эту последовательность в соответствии с упорядочением.
Сортировка устойчива. То есть элементы, равные (как определяется ord.compare), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, состоящую из элементов этой последовательности, отсортированных в соответствии с упорядочением |
| См. также | scala.math.Ordering Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться. |
| Унаследовано от | SeqOps |
Source
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пару, состоящую из самого длинного префикса этой итерируемой коллекции, элементы которого удовлетворяют |
| Унаследовано от | IterableOps |
Source
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно) (c take n, c drop n).
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пару итерируемых коллекций, состоящую из первых |
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Source
Проверяет, содержит ли эта последовательность заданную последовательность в заданном индексе.
Примечание: Если и получаемый объект this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Source
Возвращает scala.collection.Stepper для элементов этой коллекции.
Stepper позволяет создавать Java поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться как итератор, который не упаковывает элементы.
Неявный параметр scala.collection.StepperShape определяет тип возвращаемого Stepper в соответствии с типом элемента этой коллекции.
Для коллекций
Int,Short,ByteилиChar, возвращается scala.collection.IntStepperДля коллекций
DoubleилиFloat, возвращается scala.collection.DoubleStepperДля коллекций
Longвозвращается scala.collection.LongStepperДля любого другого типа элемента возвращается scala.collection.AnyStepper
Обратите внимание, что этот метод переопределен в подклассах, и тип возвращаемого значения уточняется до S with EfficientSplit, например, scala.collection.IndexedSeqOps.stepper. Для Steppers, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, в то время как обычные Steppers могут быть преобразованы только в последовательные потоки.
| Унаследовано от | IterableOnce |
|---|
Source
Суммирует элементы этой коллекции.
Примечание: не завершается для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумму всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Источник
def tail: C
Остальная часть коллекции без первого элемента.
| Унаследовано от | IterableOps |
|---|
Источник
Итерирует по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений tail.
| Возвращает | итератор по всем хвостам этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемая коллекция, состоящая только из первых |
| Унаследовано от | IterableOps |
Источник
Выбирает последние n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемая коллекция, состоящая только из последних |
| Унаследовано от | IterableOps |
Источник
Возвращает наибольший префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | наибольший префикс этой итерируемой коллекции, элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Источник
override def tapEach[U](f: A => U): C
Применяет функцию побочного эффекта к каждому элементу в этой коллекции. Строгие коллекции немедленно применяют f к своим элементам, а ленивые коллекции, такие как представления и LazyLists, применяют f к каждому элементу только при его оценке, и каждый раз, когда элемент оценивается.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Такая же логическая коллекция, как и эта |
| Классы-определения | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
При заданном фабричном методе для коллекции factory, преобразует эту коллекцию в соответствующую форму для текущего типа элемента A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Источник
Преобразование коллекции в массив.
Примечание к реализации: НЕ вызывайте Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
def toIndexedSeq: IndexedSeq[A]
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Возвращает | Эта коллекция в виде |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Возвращает строковое представление объекта.
По умолчанию представление зависит от платформы.
| Возвращает | строковое представление объекта. |
|---|---|
| Классы-определения | Seq -> Function1 -> Iterable -> Any |
| Унаследовано от | Seq |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Транспонирует это итерируемое множество итерируемых множеств в итерируемое множество итерируемых множеств.
Тип результирующего множества будет определяться статическим типом итерируемого множества. Например:
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))
Примечание: Даже при применении к представлению или ленивому множеству элементы всегда будут принудительно вычислены.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | двумерное итерируемое множество итерируемых множеств, в котором n-я строка является n-м столбцом этого итерируемого множества. |
| Исключения |
|
| Унаследовано от | IterableOps |
Источник
Попытка извлечь B из A в выражении сопоставления с образцом.
| Унаследовано от | PartialFunction |
|---|
Источник
def unzip[A1, A2](implicit asPair: A => (A1, A2)): (CC[A1], CC[A2])
Преобразует это итерируемое множество пар в два множества первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | пара итерируемых множеств, содержащая первую, соответственно вторую половину каждой пары элементов этого итерируемого множества. |
| Унаследовано от | IterableOps |
Источник
def unzip3[A1, A2, A3](implicit asTriple: A => (A1, A2, A3)): (CC[A1], CC[A2], CC[A3])
Преобразует это итерируемое множество троек в три множества первого, второго и третьего элемента каждой тройки.
val xs = Iterable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three),
// Iterable(1, 2, 3))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | тройка итерируемых множеств, содержащая первый, второй, соответственно третий член каждой тройки элементов этого итерируемого множества. |
| Унаследовано от | IterableOps |
Источник
Заменяет элемент по заданному индексу новым значением.
| Параметры значения |
|
|---|---|
| Исключения |
|
| Унаследовано от | SeqOps |
Источник
Копия этого последовательности с одним заменённым элементом.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая последовательность, являющаяся копией этой последовательности с элементом на позиции |
| Исключения |
|
| Унаследовано от | SeqOps |
Источник
Представление над элементами этого множества.
| Классы-определения | SeqOps -> IterableOps |
|---|---|
| Унаследовано от | SeqOps |
Источник
Создаёт нестрогое фильтрование этого итерируемого множества.
Примечание: Разница между c filter p и c withFilter p заключается в том, что первый создаёт новое множество, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если только тип базового множества не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | объект класса |
| Унаследовано от | IterableOps |
Источник
def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемое множество, сформированное из этого итерируемого множества и другого итерируемого множества путём комбинирования соответствующих элементов в пары. Если одно из двух множеств длиннее другого, оставшиеся элементы игнорируются.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новое итерируемое множество, содержащее пары, состоящие из соответствующих элементов этого итерируемого множества и |
| Унаследовано от | IterableOps |
Источник
Возвращает итерируемое множество, сформированное из этого итерируемого множества и другого итерируемого множества путём объединения соответствующих элементов в пары. Если одно из двух множеств короче другого, для продления более короткого множества до длины более длинного используются маркерные элементы.
| Параметры значения |
|
|---|---|
| Возвращает | новая коллекция типа |
| Унаследовано от | IterableOps |
Source
def zipWithIndex: CC[(A, Int)]
Комбинирует эту коллекцию итерируемых объектов с её индексами.
| Возвращает | новая коллекция итерируемых объектов, содержащая пары, состоящие из всех элементов этой коллекции итерируемых объектов, связанных с их индексом. Индексы начинаются с |
|---|---|
| Пример | |
| Унаследовано от | IterableOps |
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/collection/mutable/AbstractSeq.html