Трейт SeqView.SeqView
| Суперответвления | |
|---|---|
| Известные подтипы | 27 типов |
Конкретные методы
Исходный код
Копия этого представления с добавленным элементом.
Примечание: не будет завершаться для бесконечно больших коллекций.
Пример:
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 |
Исходный код
Исходный код
Исходный код
Выбирает все элементы, кроме первых n.
| Параметры значения |
|
|---|---|
| Возвращает | представление, состоящее из всех элементов этого представления, кроме первых |
| Классы определения | IterableOps -> IterableOnceOps |
Источник
Выбирает все элементы, кроме последних n элементов.
| Параметры значения |
|
|---|---|
| Возвращает | представление, состоящее из всех элементов этого представления, кроме последних |
| Классы определения | IterableOps |
Источник
Создаёт новое представление путём применения функции ко всем элементам этого представления.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новое представление, полученное путём применения заданной функции |
| Классы определения | IterableOps -> IterableOnceOps |
Источник
Копия представления с добавленным элементом в начало.
Также, исходное представление не изменяется, поэтому вам нужно будет сохранить результат.
Пример:
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 |
Источник
Источник
Возвращает новое представление с элементами в обратном порядке.
Примечание: не завершит работу для бесконечных коллекций.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
| Возвращает | Новое представление со всеми элементами этого представления в обратном порядке. |
|---|---|
| Классы определения | SeqOps |
Источник
Сортирует это представление по Ordering.
Сортировка стабильная. То есть элементы, которые равны (как определено ord.compare), появляются в отсортированной последовательности в том же порядке, что и в оригинальной.
| Параметры значения |
|
|---|---|
| Возвращает | представление, состоящее из элементов этого представления, отсортированных в соответствии с порядком |
| См. также | scala.math.Ordering Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены. |
| Классы определения | SeqOps |
Source
Выбирает первые n элементов.
| Параметры значения |
|
|---|---|
| Возвращает | представление, содержащее только первые |
| Классы определений | IterableOps -> IterableOnceOps |
Source
Выбирает последние n элементов.
| Параметры значения |
|
|---|---|
| Возвращает | представление, содержащее только последние |
| Классы определений | IterableOps |
Source
Применяет функцию со побочным эффектом к каждому элементу в этом наборе. Строгие наборы применят f к своим элементам немедленно, в то время как ленивые наборы, такие как представления и LazyLists, будут применять f к каждому элементу только в том случае, и каждый раз, когда этот элемент оценивается.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | тот же логический набор, что и этот |
| Классы определений | IterableOps -> IterableOnceOps |
Source
Представление элементов этого набора.
| Классы определений | View -> SeqOps -> IterableOps |
|---|
Методы, унаследованные из предков
Source
final def ++[B >: A](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
| Унаследовано от | IterableOps |
|---|
Source
final override def ++:[B >: A](prefix: IterableOnce[B]): CC[B]
Псевдоним для prependedAll
| Классы определений | SeqOps -> IterableOps |
|---|---|
| Унаследовано от | SeqOps |
Source
final def +:[B >: A](elem: B): CC[B]
Псевдоним для prepended.
Обратите внимание, что операторы с окончанием :- являются правоассоциативными (см. пример). Мемоническое правило для +: vs. :+ заключается в том, что двоеточие ставится со стороны коллекции.
| Унаследовано от | SeqOps |
|---|
Source
final def :+[B >: A](elem: B): CC[B]
Псевдоним для appended
Обратите внимание, что операторы с окончанием :- являются правоассоциативными (см. пример). Мемоническое правило для +: vs. :+ заключается в том, что двоеточие ставится со стороны коллекции.
| Унаследовано от | SeqOps |
|---|
Source
final def :++[B >: A](suffix: IterableOnce[B]): CC[B]
Псевдоним для appendedAll
| Унаследовано от | SeqOps |
|---|
Source
Добавляет все элементы этой коллекции в строковый буфер. Записываемый текст состоит из строковых представлений (с точки зрения метода 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 |
Source
Добавляет все элементы этой коллекции в строковый буфер, используя разделительную строку. Записываемый текст состоит из строковых представлений (с точки зрения метода 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 |
Source
Добавляет все элементы этой коллекции в строковый буфер, используя начальную, конечную и разделительные строки. Записываемый текст начинается со строки 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 |
Source
def appendedAll[B >: A](suffix: IterableOnce[B]): CC[B]
Возвращает новую последовательность, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов последовательности — наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая коллекция типа |
| Унаследовано от | SeqOps |
Source
Получить элемент по указанному индексу. Эта операция предоставляется для удобства в Seq. Не следует предполагать, что она будет эффективной, если у вас нет IndexedSeq.
| Унаследовано от | SeqOps |
|---|
Source
def collect[B](pf: PartialFunction[A, B]): CC[B]
Создаёт новую итерируемую коллекцию, применяя частичную функцию ко всем элементам этой итерируемой коллекции, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения заданной частичной функции |
| Наследуется от | IterableOps |
Source
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип основной коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа option, содержащее результат применения pf к первому значению, для которого оно определено, или |
| Пример |
|
| Наследуется от | IterableOnceOps |
Source
Итерируется по сочетаниям. _Сочетание_ длины n представляет собой подпоследовательность исходной последовательности, элементы которой берутся в порядке следования. Таким образом, "xy" и "yy" являются сочетаниями длины 2 последовательности "xyy", но "yx" не является. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращён только один вариант.
Например, "xyyy" имеет три разных способа генерации "xy" в зависимости от того, какой элемент "y" выбирается первым, вторым или третьим. Однако, поскольку все они идентичны, будет выбран только один. Какой из трёх вариантов будет выбран, является реализационным деталью и не определён.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | Итератор, проходящий по возможным сочетаниям длины n элементов этой последовательности. |
|---|---|
| Пример |
|
| Наследуется от | SeqOps |
Source
final override def concat[B >: A](suffix: IterableOnce[B]): CC[B]
Возвращает новую последовательность, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элементов последовательности является наиболее общим суперклассом, охватывающим типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, за которыми следуют все элементы |
| Классы определений | SeqOps -> IterableOps |
| Наследуется от | SeqOps |
Source
Проверяет, содержит ли эта последовательность заданное значение в качестве элемента.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Исходный код
Проверяет, содержит ли эта последовательность заданную последовательность в качестве слайса.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет данный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Использование: После вызова этого метода итератор, на котором он был вызван, необходимо отбросить. Использование итератора после вызова undefined и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет данный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Использование: После вызова этого метода итератор, на котором он был вызван, необходимо отбросить. Использование итератора после вызова undefined и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет данный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Использование: После вызова этого метода итератор, на котором он был вызван, необходимо отбросить. Использование итератора после вызова undefined и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя предикату проверки.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение |
|
| Унаследовано от | IterableOnceOps |
Source
Проверяет, соответствует ли каждый элемент этой последовательности соответствующему элементу другой последовательности, удовлетворяя предикату проверки.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение |
|
| Унаследовано от | SeqOps |
Source
Подсчитывает количество элементов в наборе, удовлетворяющих предикату.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Source
Вычисляет разность мультимножеств между этой последовательностью и другой последовательностью.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новая последовательность, которая содержит все элементы этой последовательности, за исключением некоторых вхождений элементов, которые также встречаются в |
| Унаследовано от | SeqOps |
Source
def distinct: C
Выбирает все элементы этой последовательности, игнорируя дубликаты.
| Возвращаемое значение | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
|---|---|
| Унаследовано от | SeqOps |
Source
def distinctBy[B](f: A => B): C
Выбирает все элементы этой последовательности, игнорируя дубликаты, как определено == после применения преобразовательной функции f.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
| Унаследовано от | SeqOps |
Источник
Опускает самую длинную префиксную часть элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный суффикс этой коллекции, первый элемент которого не удовлетворяет предикату |
| Унаследовано от | IterableOps |
Источник
Пустая итерабельная коллекция того же типа, что и эта итерабельная коллекция.
| Возвращает | пустая итерабельная коллекция типа |
|---|---|
| Классы определений | View -> IterableFactoryDefaults -> IterableOps |
| Унаследовано от | View |
Источник
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Выбирает все элементы этой итерабельной коллекции, которые удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерабельная коллекция, состоящая из всех элементов этой итерабельной коллекции, которые удовлетворяют заданному предикату |
| Унаследовано от | IterableOps |
Источник
Выбирает все элементы этой итерабельной коллекции, которые не удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерабельная коллекция, состоящая из всех элементов этой итерабельной коллекции, которые не удовлетворяют заданному предикату |
| Унаследовано от | 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 |
Source
def flatten[B](implicit asIterable: A => IterableOnce[B]): CC[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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новую коллекцию-итерируемый объект, полученную путём конкатенации всех коллекций-итерируемых элементов. |
| Унаследовано от | IterableOps |
Source
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
Складывает элементы этой коллекции, используя заданный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат применения оператора сворачивания |
| Унаследовано от | 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 |
Source
def head: A
Выбирает первый элемент этого итерируемого набора.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Возвращает | первый элемент этого итерируемого набора. |
|---|---|
| Исключения |
|
| Унаследовано от | IterableOps |
Source
def headOption: Option[A]
Необязательно выбирает первый элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Возвращает | первый элемент этого итерируемого набора, если он не пустой, |
|---|---|
| Унаследовано от | IterableOps |
Source
Находит индекс первого вхождения значения в этой последовательности.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого вхождения значения в этой последовательности после или на определенном начальном индексе.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс, где эта последовательность содержит заданную последовательность в качестве слайса.
Примечание: может не завершиться для последовательностей бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс после или на начальном индексе, где эта последовательность содержит заданную последовательность в качестве слайса.
Примечание: может не завершиться для последовательностей бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Источник
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или в определённом стартовом индексе.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Возвращает диапазон всех индексов этой последовательности.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Возвращает | значение |
|---|---|
| Унаследовано от | SeqOps |
Источник
def init: C
Начальная часть коллекции без её последнего элемента.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Унаследовано от | IterableOps |
|---|
Источник
Итерация по начальным частям (inits) этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, промежуточные значения — результаты последовательных применений init.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Возвращает | итератор по всем начальным частям (inits) этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Вычисляет пересечение мультимножеств между этой последовательностью и другой последовательностью.
| Параметры значения |
|
|---|---|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, которые также присутствуют в |
| Унаследовано от | SeqOps |
Источник
Проверяет, содержит ли эта последовательность указанный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Проверяет, является ли последовательность пустой.
Примечание: Реализации в подклассах, которые не являются многократно проходимыми, должны позаботиться о том, чтобы не потреблять никаких элементов, когда isEmpty вызывается.
| Возвращает |
|
|---|---|
| Классы определений | SeqOps -> IterableOnceOps |
| Унаследовано от | SeqOps |
Источник
override def isTraversableAgain: Boolean
Проверяет, может ли эта итерируемая коллекция быть многократно пройдена. Всегда истинно для Iterable и ложно для Iterator, если не переопределено.
| Возвращает |
|
|---|---|
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
Компаньон-объект этого представления, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Классы определений | View -> Iterable -> IterableOps |
| Унаследовано от | View |
Источник
Итератор может быть использован только один раз
| Унаследовано от | 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 |
Исходный код
Сравнивает длину этой последовательности со значением-тестом.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len Метод, как он реализован здесь, не вызывает |
| См. также | |
| Унаследовано от | SeqOps |
Исходный код
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 |
|---|
Исходный код
Находит максимальный элемент.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этой коллекции относительно упорядочения |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка |
| Издаёт исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащей первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наибольший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащей наибольший элемент этой коллекции относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этой коллекции относительно порядка |
| Издаёт исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опции, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опции, содержащее наименьший элемент этого набора относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этого набора в строке.
Делегирует addString, который может быть переопределен.
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (в соответствии с методом |
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этого набора в строке с использованием разделительной строки.
Делегирует addString, который может быть переопределен.
| Параметры значений |
|
|---|---|
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (в соответствии с методом |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этого набора в строке, используя начальную, конечную и разделительные строки.
Делегирует addString, который может быть переопределен.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этого набора. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
protected def newSpecificBuilder: Builder[A, CC[A]]
| Возвращает | строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, scala.collection.View или scala.collection.immutable.LazyList) этот метод можно реализовать, но полученный |
|---|---|
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как видно из аннотации |
| Унаследовано от | IterableFactoryDefaults |
Источник
Проверяет, не пуста ли коллекция.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Копия этой последовательности с добавленным элементом до тех пор, пока не будет достигнута заданная целевая длина.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за которыми следует минимальное количество вхождений |
| Унаследовано от | 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 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]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
def reduceOption[B >: A](op: (B, B) => B): Option[B]
Сводит элементы этой коллекции, если таковые имеются, с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Значение опции, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Источник
def reduceRight[B >: A](op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
Применяет бинарный оператор ко всем элементам этого набора, слева направо.
Примечание: не завершится для наборов бесконечной длины.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
def reverseIterator: Iterator[A]
Итератор, возвращающий элементы в обратном порядке.
Примечание: не завершится для наборов бесконечной длины.
Примечание: xs.reverseIterator эквивалентно xs.reverse.iterator, но может быть более эффективным.
| Возвращает | итератор, возвращающий элементы этой последовательности в обратном порядке |
|---|---|
| Унаследовано от | SeqOps |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Являются ли элементы этого набора одинаковыми (и в том же порядке), что и элементы that?
| Унаследовано от | SeqOps |
|---|
Источник
def scan[B >: A](z: B)(op: (B, B) => B): CC[B]
Вычисляет префиксную сумму элементов набора.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий префиксную сумму элементов в этом итерируемом наборе |
| Унаследовано от | IterableOps |
Источник
def scanLeft[B](z: B)(op: (B, A) => B): CC[B]
Создаёт итерируемый набор, содержащий кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для наборов бесконечной длины.
Примечание: может возвращать разные результаты для разных запусков, если базовый тип набора не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | набор с промежуточными результатами |
| Унаследовано от | IterableOps |
Источник
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 |
Источник
Поиск в заданном интервале в этом отсортированном наборе для определённого элемента. Если этот набор является 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 |
Исходный код
Группирует элементы в блоки фиксированного размера, перемещая «скользящее окно» по ним (в отличие от разбиения их, как это делается в grouped).
Пустая коллекция возвращает пустой итератор, а непустая коллекция, содержащая меньше элементов, чем размер окна, возвращает итератор, который произведёт исходную коллекцию как единственный элемент.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые коллекции размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
Сортирует эту последовательность в соответствии с упорядочением, которое получается из преобразования явно заданного упорядочения с помощью функции преобразования.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: Даже при применении к представлению или ленивой коллекции она всегда будет принудительно вычислять элементы.
Сортировка является устойчивой. То есть, элементы, которые равны (как определено 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
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: 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. Для Stepper'ов, помеченных scala.collection.Stepper.EfficientSplit, конвертеры в scala.jdk.StreamConverters позволяют создавать параллельные потоки, в то время как обычные Stepper'ы могут быть преобразованы только в последовательные потоки.
| Унаследовано от | IterableOnce |
|---|
Источник
Суммирует элементы этой коллекции.
Примечание: не будет завершено для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумму всех элементов этой коллекции относительно операции |
| Унаследовано от | IterableOnceOps |
Источник
def tail: C
Остальная часть коллекции без её первого элемента.
| Унаследовано от | IterableOps |
|---|
Источник
Итерируется по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатом последовательных применений tail.
| Возвращает | итератор по всем хвостам этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Берёт самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип основной коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный префикс этой итерируемой коллекции, все элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Источник
С помощью фабрики коллекций factory преобразовать эту коллекцию в соответствующее представление для текущего типа элемента A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Источник
Преобразовать коллекцию в массив.
Примечание к реализации: НЕ вызывать Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Source
| Inherited from | IterableOnceOps |
|---|
Source
def toIndexedSeq: IndexedSeq[A]
| Inherited from | IterableOnceOps |
|---|
Source
| Inherited from | IterableOnceOps |
|---|
Source
| Inherited from | IterableOnceOps |
|---|
Source
| Возвращает | Это коллекцию в виде |
|---|---|
| Inherited from | IterableOnceOps |
Source
| Inherited from | IterableOnceOps |
|---|
Source
Преобразует это представление в строку.
| Возвращает | строковое представление этой коллекции. По умолчанию эта строка состоит из |
|---|---|
| Определяющие классы | View -> Iterable -> Any |
| Inherited from | View |
Source
| Inherited from | IterableOnceOps |
|---|
Source
Транспонирует эту итерируемую коллекцию итерируемых коллекций в итерируемую коллекцию итерируемых коллекций.
Тип результирующей коллекции будет определяться статическим типом итерируемой коллекции. Например:
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-м столбцом этой итерируемой коллекции. |
| Исключения |
|
| Inherited from | IterableOps |
Source
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 |
Источник
Создаёт нестрогий фильтр этого итерируемого набора.
Примечание: разница между c filter p и c withFilter p в том, что первый создаёт новый набор, а второй только ограничивает область последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | объект класса |
| Унаследовано от | IterableOps |
Источник
def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора путём объединения соответствующих элементов в пары. Если один из двух наборов длиннее другого, его оставшиеся элементы игнорируются.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и |
| Унаследовано от | IterableOps |
Источник
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора путём объединения соответствующих элементов в пары. Если один из двух наборов короче другого, для удлинения более короткого набора до длины более длинного используются заполнители.
| Параметры значения |
|
|---|---|
| Возвращает | новый набор типа |
| Унаследовано от | IterableOps |
Источник
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/SeqView.html