Класс scala.collection.parallel.SeqSplitter.Appended
класс Appended[U >: T, PI <: SeqSplitter[U]] extends SeqSplitter.Appended[U, PI] with SeqSplitter[U]
- Источник
- RemainsIterator.scala
Конструкторы экземпляров
новый Appended(it: PI)
Типовые члены
класс GroupedIterator[B >: A] extends AbstractIterator[Seq[B]] with Iterator[Seq[B]]
Гибкий итератор для преобразования Iterator[A] в Iterator[Seq[A]] с настраиваемым размером последовательности, шагом и стратегией обработки элементов, которые не делятся равномерно.
Типичные применения достигаются с помощью методов grouped и sliding.
- Определяющие классы
- Iterator
класс Appended[U >: T, PI <: SeqSplitter[U]] extends SeqSplitter.Appended[U, PI] with SeqSplitter[U]
- Определяющие классы
- SeqSplitter
класс Mapped[S] extends SeqSplitter.Mapped[S] with SeqSplitter[S]
- Определяющие классы
- SeqSplitter
класс Patched[U >: T] extends SeqSplitter[U]
- Определяющие классы
- SeqSplitter
класс Taken extends SeqSplitter.Taken with SeqSplitter[T]
- Определяющие классы
- SeqSplitter
класс Zipped[S] extends SeqSplitter.Zipped[S] with SeqSplitter[(T, S)]
- Определяющие классы
- SeqSplitter
класс ZippedAll[U >: T, S] extends SeqSplitter.ZippedAll[U, S] with SeqSplitter[(U, S)]
- Определяющие классы
- SeqSplitter
Члены-значения
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- returns
trueесли !(this == that), в противном случае false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращается значение хэша, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## будет генерировать одинаковое значение хэша для каждого из них. Для null возвращается хэш-код, где null.hashCode вызывает NullPointerException.
- returns
значение хэша, согласованное с ==
- Definition Classes
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен благодаря неявной конверсии из Appended[U, PI] в any2stringadd[Appended[U, PI]] с помощью метода any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
def ++(that: ⇒ Iterator[U]): Iterator[U]
Конкатенация текущего итератора с другим.
- that
другой итератор
- returns
новый итератор, который сначала генерирует значения, производимые текущим итератором, а затем значения, производимые итератором
that.
- Definition Classes
- Iterator
def ->[B](y: B): (Appended[U, PI], B)
- Неявный
- Этот член добавлен благодаря неявной конверсии из Appended[U, PI] в ArrowAssoc[Appended[U, PI]] с помощью метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Аннотации
- @inline()
def /:[B](z: B)(op: (B, U) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого итерируемого объекта или итератора, слева направо.
Примечание: /: - это альтернативный синтаксис для foldLeft; z /: xs эквивалентно xs foldLeft z.
Примеры:
Обратите внимание, что функция сворачивания, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_) b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y) c: Int = 15
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен, или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора слева направо с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn- это элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def :\[B](z: B)(op: (U, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора и начальному значению, справа налево.
Примечание: :\ - это альтернативный синтаксис для foldRight; xs :\ z эквивалентно xs foldRight z.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен, или оператор не является ассоциативным и коммутативным.
Примеры:
Обратите внимание, что функция сворачивания, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_) b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y) c: Int = 15
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn- это элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- returns
true, если объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def abort(): Unit
Отправляет сигнал прерывания другим работникам.
Флаг прерывания, установленный в true, означает, что рабочий может прерваться и произвести любой результат, поскольку его результат не повлияет на конечный результат вычисления. Примерами операций, использующих это, являются методы find, forall и exists.
- Definition Classes
- DelegatedSignalling → Signalling
def addString(b: StringBuilder): StringBuilder
Добавляет все элементы этого обхода или итератора в строковый буфер. Записанный текст состоит из строковых представлений (в соответствии с методом toString) всех элементов этого обхода или итератора без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
- b
строковый буфер, в который добавляются элементы.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
def addString(b: StringBuilder, sep: String): StringBuilder
Добавляет все элементы этого обхода или итератора в строковый буфер с использованием разделительной строки. Записанный текст состоит из строковых представлений (в соответствии с методом toString) всех элементов этого обхода или итератора, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
- b
строковый буфер, в который добавляются элементы.
- sep
разделительная строка.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder
Добавляет все элементы этого обхода или итератора в строковый буфер, используя начальную, конечную и разделительные строки. Записанный текст начинается со строки 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)
- b
строковый буфер, в который добавляются элементы.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
def aggregate[B](z: ⇒ B)(seqop: (B, U) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общая форма fold и reduce. Аналогично foldLeft, оно не требует, чтобы результат был супертипом типа элемента. Кроме того, оно позволяет обрабатывать параллельные коллекции частями, а затем объединять промежуточные результаты.
aggregate разбивает обход или итератор на части и обрабатывает каждую часть последовательно, применяя seqop, начиная с z (как foldLeft). Эти промежуточные результаты затем объединяются с помощью combop (как fold). Реализация этой операции может работать с произвольным количеством разделов коллекции (даже с 1), поэтому combop может вызываться произвольное число раз (даже 0).
В качестве примера рассмотрим суммирование целочисленных значений списка символов. Начальное значение для суммы равно 0. Во-первых, seqop преобразует каждый входной символ в целое число и добавляет его к сумме (части). Затем, combop просто нужно просуммировать промежуточные результаты частей:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип накапливаемых результатов
- z
начальное значение для накапливаемого результата части - обычно это нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования) и может быть вычислено более одного раза- seqop
оператор, используемый для накопления результатов в рамках части
- combop
ассоциативный оператор, используемый для объединения результатов из разных частей
- Definition Classes
- TraversableOnce → GenTraversableOnce
def appendParIterable[U >: U, PI <: IterableSplitter[U]](that: PI): Appended.Appended[U, PI]
- Definition Classes
- IterableSplitter
def appendParSeq[U >: U, PI <: SeqSplitter[U]](that: PI): Appended[U, PI]
- Definition Classes
- SeqSplitter
final def asInstanceOf[T0]: T0
Преобразует текущий объект в тип T0.
Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания Scala. Таким образом, выражение 1.asInstanceOf[String] выбросит исключение ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] не выбросит. В последнем примере, поскольку тип аргумента стирается во время компиляции, невозможно проверить, соответствуют ли содержимое списка требуемому типу.
- returns
текущий объект.
- Definition Classes
- Any
- Исключения
ClassCastException, если текущий объект не является экземпляром стираемого типаT0.
def buffered: BufferedIterator[U]
Создает буферизованный итератор из этого итератора.
- returns
буферизованный итератор, возвращающий те же значения, что и этот итератор.
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода вы должны отбросить итератор, на котором он был вызван, и использовать только тот, который был возвращён. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе.
- См. также
def buildString(closure: ((String) ⇒ Unit) ⇒ Unit): String
- Атрибуты
- protected
- Definition Classes
- IterableSplitter
def clone(): AnyRef
Создаёт копию объекта.
По умолчанию метод clone зависит от платформы.
- returns
копия объекта.
def collect[B](pf: PartialFunction[U, B]): Iterator[B]
Создаёт итератор, преобразуя значения, производимые этим итератором, с помощью частичной функции, отбрасывая те значения, для которых частичная функция не определена.
- pf
частичная функция, которая фильтрует и преобразует итератор.
- returns
новый итератор, который выдает каждое значение
xпроизводимое этим итератором, для которогоpfопределена с изображениемpf(x).
- Definition Classes
- Iterator
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.8.0)
collectизменилось. Предыдущее поведение может быть воспроизведено с помощьюtoSeq.- Примечание
Переиспользование: После вызова этого метода вы должны отбросить итератор, на котором он был вызван, и использовать только тот, который был возвращён. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе.
def collect2combiner[S, That](pf: PartialFunction[U, S], cb: Combiner[S, That]): Combiner[S, That]
- Definition Classes
- AugmentedIterableIterator
def collectFirst[B](pf: PartialFunction[U, B]): Option[B]
Находит первый элемент в коллекциях или итераторе, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
- pf
частичная функция
- returns
значение типа Option, содержащее pf, применённое к первому значению, для которого оно определено, или
Noneесли такого значения нет.
- Definition Classes
- TraversableOnce
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def contains(elem: Any): Boolean
Проверяет, содержит ли этот итератор заданное значение в качестве элемента.
Примечание: может не завершаться для бесконечных итераторов.
- elem
тестируемый элемент.
- возвращает
trueесли этот итератор производит какое-либо значение, которое равно (как определено==)elem,falseв противном случае.
- Классы определений
- Iterator
- Примечание
Повторное использование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование неопределено и может измениться.
def copy2builder[U >: U, Coll, Bld <: Builder[U, Coll]](b: Bld): Bld
- Классы определений
- AugmentedIterableIterator
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует выбранные значения, производимые этим итератором, в массив. Заполняет заданный массив xs начиная с индекса start не более чем len значениями, производимыми этим итератором. Копирование прекратится, когда будет достигнут конец текущего итератора, или конец массива, или len элементов были скопированы.
Примечание: не будет завершаться для бесконечных итераторов.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество элементов для копирования.
- Классы определений
- AugmentedIterableIterator → Iterator → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A]): Unit
Копирует элементы этого итерируемого объекта или итератора в массив. Заполняет данный массив xs значениями этого итерируемого объекта или итератора. Копирование прекращается, когда достигается конец текущего итерируемого объекта или итератора, или конец целевого массива.
Примечание: не завершаться для бесконечных итераторов.
- xs
массив для заполнения.
- Классы определений
- TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этого итерируемого объекта или итератора в массив. Заполняет данный массив xs значениями этого итерируемого объекта или итератора, начиная с индекса start. Копирование прекращается, когда достигается конец текущего итерируемого объекта или итератора, или конец целевого массива.
Примечание: не завершаться для бесконечных итераторов.
- xs
массив для заполнения.
- start
начальный индекс.
- Классы определений
- TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: U](dest: Buffer[B]): Unit
Копирует все элементы этого итерируемого объекта или итератора в буфер.
Примечание: не завершаться для бесконечных коллекций.
- dest
Буфер, в который копируются элементы.
- Классы определений
- TraversableOnce
def corresponds[S](corr: (U, S) ⇒ Boolean)(that: scala.Iterator[S]): Boolean
- Классы определений
- AugmentedSeqIterator
def corresponds[B](that: GenTraversableOnce[B])(p: (U, B) ⇒ Boolean): Boolean
Проверяет, удовлетворяет ли каждый элемент этого итератора соответствующему элементу другой коллекции, удовлетворяя условию проверки.
- B
тип элементов
that- that
другая коллекция
- p
условие проверки, которое связывает элементы из обеих коллекций
- возвращает
trueесли обе коллекции имеют одинаковую длину иp(x, y)являетсяtrueдля всех соответствующих элементовxэтого итератора иythat, в противном случаеfalse
- Классы определений
- Iterator
def count(p: (U) ⇒ Boolean): Int
Подсчитывает количество элементов в перебираемом или итераторе, удовлетворяющих предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
var curr: IterableSplitter[U]
- Attributes
- protected
- Definition Classes
- Appended
def drop(n: Int): IterableSplitter[U]
Удаление реализовано как простое жадное потребление.
- n
количество элементов для удаления
- returns
итератор, который генерирует все значения текущего итератора, но пропускает первые
nзначения.
- Definition Classes
- IterableSplitter → Iterator
def drop2combiner[U >: U, This](n: Int, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def dropWhile(p: (U) ⇒ Boolean): Iterator[U]
Пропускает самую длинную последовательность элементов этого итератора, удовлетворяющих заданному предикату p, и возвращает итератор оставшихся элементов.
- p
предикат, используемый для пропуска элементов.
- returns
итератор, состоящий из оставшихся элементов
- Definition Classes
- Iterator
- Note
Использование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе тоже.
def dup: SeqSplitter[U]
Создаёт копию этого итератора.
- Definition Classes
- Appended → SeqSplitter → Appended → IterableSplitter
def duplicate: (Iterator[U], Iterator[U])
Создаёт два новых итератора, которые оба итерируются по тем же элементам, что и этот итератор (в том же порядке). Дублированные итераторы считаются равными, если они находятся на одном и том же элементе.
Учитывая, что большинство методов итераторов сделают исходный итератор непригодным для дальнейшего использования, этот метод предоставляет надёжный способ вызова нескольких таких методов на итераторе.
- returns
пара итераторов
- Definition Classes
- Iterator
- Note
-
Реализация может выделять временное хранилище для элементов, перечисленных одним итератором, но ещё не другим.
,Использование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах тоже.
def ensuring(cond: (Appended[U, PI]) ⇒ Boolean, msg: ⇒ Any): Appended[U, PI]
- Implicit
- Этот член добавлен неявным преобразованием из Appended[U, PI] в Ensuring[Appended[U, PI]] посредством метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (Appended[U, PI]) ⇒ Boolean): Appended[U, PI]
- Неявный
- Этот член добавлен неявным преобразованием из Appended[U, PI] в Ensuring[Appended[U, PI]] выполняемым методом Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Appended[U, PI]
- Неявный
- Этот член добавлен неявным преобразованием из Appended[U, PI] в Ensuring[Appended[U, PI]] выполняемым методом Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean): Appended[U, PI]
- Неявный
- Этот член добавлен неявным преобразованием из Appended[U, PI] в Ensuring[Appended[U, PI]] выполняемым методом Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на не-null экземплярах AnyRef, и обладает тремя дополнительными свойствами:
-
Он согласован: для любых не-null экземпляров
x и y типа AnyRef, множественные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-null экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true. При переопределении методов equals или hashCode важно гарантировать, что их поведение соответствует равенству ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны хешироваться к одному значению (o1.hashCode == o2.hashCode).
- возвращает
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Определяющие классы
- AnyRef
def equals(arg0: Any): Boolean
Метод равенства для типов ссылок. По умолчанию делегирует методу eq.
См. также equals в scala.Any.
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Определяющие классы
- AnyRef → Any
def exists(p: (U) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для некоторых значений, генерируемых этим итератором.
Примечание: может не завершиться для бесконечных итераторов.
- p
предикат, используемый для проверки элементов.
- возвращает
trueесли данный предикатpвыполняется для некоторых значений, генерируемых этим итератором, иначеfalse.
- Определяющие классы
- Iterator → TraversableOnce → GenTraversableOnce
- Примечание
Переиспользование: После вызова этого метода, итератор, на котором он был вызван, должен быть отброшен. Использование его не определено и может измениться.
def filter(p: (U) ⇒ Boolean): Iterator[U]
Возвращает итератор по всем элементам этого итератора, которые удовлетворяют предикату p. Порядок элементов сохраняется.
- p
предикат, используемый для проверки значений.
- возвращает
итератор, который генерирует те значения из этого итератора, которые удовлетворяют предикату
p.
- Определяющие классы
- Iterator
- Примечание
Переиспользование: После вызова этого метода, итератор, на котором он был вызван, должен быть отброшен, а использоваться только тот, который был возвращен. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе тоже.
def filter2combiner[U >: U, This](pred: (U) ⇒ Boolean, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def filterNot(p: (U) ⇒ Boolean): Iterator[U]
Создаёт итератор по всем элементам этого итератора, которые не удовлетворяют предикату p.
- p
предикат, используемый для проверки значений.
- returns
итератор, который производит те значения из этого итератора, которые не удовлетворяют предикату
p.
- Definition Classes
- Iterator
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def filterNot2combiner[U >: U, This](pred: (U) ⇒ Boolean, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def finalize(): Unit
Вызывается сборщиком мусора на объекте-получателе, когда больше нет ссылок на объект.
Подробности о том, когда и будет ли вызываться метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- Note
не указано SLS как члена AnyRef
def find(p: (U) ⇒ Boolean): Option[U]
Ищет первое значение, производимое итератором, удовлетворяющее предикату, если таковое есть.
Примечание: может не завершиться для бесконечных итераторов.
- p
предикат, используемый для проверки значений.
- returns
значение Option, содержащее первое значение, производимое итератором, которое удовлетворяет предикату
p, илиNoneв случае отсутствия такого значения.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может быть изменено.
def firstNonEmpty: Boolean
- Attributes
- protected
- Definition Classes
- Appended
def flatMap[B](f: (U) ⇒ GenTraversableOnce[B]): Iterator[B]
Создаёт новый итератор, применяя функцию ко всем значениям, производимым этим итератором, и конкатенируя результаты.
- f
функция, применяемая к каждому элементу.
- returns
итератор, полученный путём применения заданной функции, возвращающей итератор
fк каждому значению, производимому этим итератором, и конкатенации результатов.
- Definition Classes
- Iterator
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def flatmap2combiner[S, That](f: (U) ⇒ GenTraversableOnce[S], cb: Combiner[S, That]): Combiner[S, That]
- Definition Classes
- AugmentedIterableIterator
def fold[U >: U](z: U)(op: (U, U) ⇒ U): U
Складывает элементы этого итерируемого объекта или итератора, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не будет завершаться для бесконечных итераторов.
- z
нейтральный элемент для операции сложения; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора сложения
opмежду всеми элементами иz, илиzесли этот итерируемый объект или итератор пуст.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
def foldLeft[B](z: B)(op: (B, U) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого итерируемого объекта или итератора слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции в основе не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора слева направо с начальным значениемzслева:op(...op(z, x_1), x_2, ..., x_n)
где
x1, ..., xn— элементы этого итерируемого объекта или итератора. Возвращаетzесли этот итерируемый объект или итератор пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def foldRight[B](z: B)(op: (U, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора и начальному значению, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции в основе не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— элементы этого итерируемого объекта или итератора. Возвращаетzесли этот итерируемый объект или итератор пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def forall(p: (U) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех значений, генерируемых этим итератором.
Примечание: может не завершаться для бесконечных итераторов.
- p
предикат, используемый для проверки элементов.
- returns
trueесли данный предикатpвыполняется для всех значений, генерируемых этим итератором, в противном случаеfalse.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван. Использование его не определено и может измениться.
def foreach(f: (U) ⇒ Unit): Unit
Применяет функцию f ко всем значениям, генерируемым этим итератором.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fотбрасывается.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной format строкой. Форматные строки аналогичны String.format (@см java.lang.String.format).
- Неявный
- Этот член добавляется неявным преобразованием из Appended[U, PI] в StringFormat[Appended[U, PI]] с помощью метода StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
final def getClass(): Class[_]
def grouped[B >: U](size: Int): GroupedIterator[B]
Возвращает итератор, который группирует этот итератор в блоки фиксированного размера. Примеры использования:
// Returns List(List(1, 2, 3), List(4, 5, 6), List(7))) (1 to 7).iterator grouped 3 toList // Returns List(List(1, 2, 3), List(4, 5, 6)) (1 to 7).iterator grouped 3 withPartial false toList // Returns List(List(1, 2, 3), List(4, 5, 6), List(7, 20, 25) // Illustrating that withPadding's argument is by-name. val it2 = Iterator.iterate(20)(_ + 5) (1 to 7).iterator grouped 3 withPadding it2.next toList
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода необходимо удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def hasDefiniteSize: Boolean
Проверяет, имеет ли этот итератор известный размер.
- returns
trueдля пустых итераторов,falseв противном случае.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
- Note
Переиспользование: итератор остаётся действительным для дальнейшего использования независимо от возвращаемого результата.
def hasNext: Boolean
Проверяет, может ли этот итератор предоставить другой элемент.
- returns
trueесли последующий вызовnextвернёт элемент,falseв противном случае.
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- returns
значение хэш-кода для этого объекта.
def indexFlag: Int
Возвращает значение флага индекса.
Флаг индекса содержит целое число, которое имеет определённый смысл, специфичный для операции. Например, операция takeWhile устанавливает флаг индекса в позицию элемента, где предикат терпит неудачу. Другие рабочие элементы могут проверять этот индекс по отношению к индексам, с которыми они работают, и возвращаться, если этот индекс меньше их индекса. Примеры операций, использующих это, это takeWhile, dropWhile, span и indexOf.
- returns
значение флага индекса
- Definition Classes
- DelegatedSignalling → Signalling
def indexOf[B >: U](elem: B, from: Int): Int
Возвращает индекс первого вхождения указанного объекта в этом итерируемом объекте после или в указанном стартовом индексе.
Примечание: может не завершиться для бесконечных итераторов.
- elem
элемент для поиска.
- from
начальный индекс
- returns
индекс
>= fromпервого вхожденияelemв значения, производимые этим итератором, или -1, если такой элемент не существует до достижения конца итератора.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода необходимо удалить итератор, на котором он был вызван. Использование его не определено и может быть изменено.
def indexOf[B >: U](elem: B): Int
Возвращает индекс первого вхождения указанного объекта в этом итерируемом объекте.
Примечание: может не завершиться для бесконечных итераторов.
- elem
элемент для поиска.
- returns
индекс первого вхождения
elemв значения, производимые этим итератором, или -1, если такой элемент не существует до достижения конца итератора.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода необходимо удалить итератор, на котором он был вызван. Использование его не определено и может быть изменено.
def indexWhere(pred: (U) ⇒ Boolean): Int
Возвращает индекс первого произведённого значения, удовлетворяющего предикату, или -1.
Примечание: может не завершиться для бесконечных итераторов.
- returns
индекс первого произведённого значения, удовлетворяющего
p, или -1, если такой элемент не существует до достижения конца итератора.
- Definition Classes
- AugmentedSeqIterator → Iterator
- Note
Переиспользование: После вызова этого метода необходимо удалить итератор, на котором он был вызван. Использование его не определено и может быть изменено.
def indexWhere(p: (U) ⇒ Boolean, from: Int): Int
Возвращает индекс первого произведённого значения, удовлетворяющего предикату, или -1, после или в указанном стартовом индексе.
Примечание: может не завершиться для бесконечных итераторов.
- p
предикат для проверки значений
- from
начальный индекс
- returns
индекс
>= fromпервого произведённого значения, удовлетворяющегоp, или -1, если такой элемент не существует до достижения конца итератора.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода необходимо удалить итератор, на котором он был вызван. Использование его не определено и может быть изменено.
def isAborted: Boolean
Проверяет, был ли выдан сигнал об отмене.
Флаг отмены, установленный в значение true, означает, что рабочий может отменить и произвести любой результат, поскольку его результат не повлияет на окончательный результат вычисления. Примерами операций, использующих это, являются методы find, forall и exists.
- returns
состояние отмены
- Definition Classes
- DelegatedSignalling → Signalling
def isEmpty: Boolean
Проверяет, пуст ли этот итератор.
- returns
trueесли hasNext ложно,falseв противном случае.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
- Note
Использование: итератор остается действительным для дальнейшего использования независимо от возвращаемого результата.
final def isInstanceOf[T0]: Boolean
Проверка, является ли динамический тип объекта-приемника T0.
Обратите внимание, что результат проверки зависит от семантики стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере из-за стирания типа аргумента во время компиляции невозможно проверить, соответствуют ли элементы списка указанному типу.
- returns
trueесли объект-приемник является экземпляром стирания типаT0;falseв противном случае.
- Definition Classes
- Any
def isRemainingCheap: Boolean
Для большинства коллекций это недорогая операция. Исключения могут переопределять этот метод.
- Definition Classes
- RemainsIterator
def isTraversableAgain: Boolean
Проверяет, можно ли повторно пройти по этому итератору.
- returns
false
- Definition Classes
- Iterator → GenTraversableOnce
- Note
Использование: итератор остается действительным для дальнейшего использования независимо от возвращаемого результата.
def lastIndexWhere(pred: (U) ⇒ Boolean): Int
- Definition Classes
- AugmentedSeqIterator
def length: Int
Возвращает количество элементов в этом итераторе.
Примечание: не завершится для бесконечных итераторов.
- Definition Classes
- Iterator
- Note
Использование: после вызова этого метода следует отбросить итератор, на котором он был вызван. Использование его не определено и может измениться.
def map[S](f: (U) ⇒ S): Mapped[S]
Создаёт новый итератор, отображающий все производимые значения этого итератора в новые значения с помощью функции преобразования.
- f
функция преобразования
- returns
новый итератор, преобразующий каждое значение, производимое этим итератором, путём применения функции
fк нему.
- Definition Classes
- SeqSplitter → IterableSplitter → Iterator
- Note
Использование: после вызова этого метода следует отбросить вызвавший итератор и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться, и может привести к изменениям в новом итераторе также.
def map2combiner[S, That](f: (U) ⇒ S, cb: Combiner[S, That]): Combiner[S, That]
- Definition Classes
- AugmentedIterableIterator
def max: A
Находит наибольший элемент.
- returns
наибольший элемент этого итерируемого объекта или итератора.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если этот итерируемый объект или итератор пуст.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этого перебираемого объекта или итератора с наибольшим значением, измеренным функцией f.
- Классы-определения
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот перебираемый объект или итератор пуст.
def min: A
Находит наименьший элемент.
- возвращает
наименьший элемент этого перебираемого объекта или итератора
- Классы-определения
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот перебираемый объект или итератор пуст.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этого перебираемого объекта или итератора с наименьшим значением, измеренным функцией f.
- Классы-определения
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот перебираемый объект или итератор пуст.
def mkString: String
Отображает все элементы этого перебираемого объекта или итератора в строке.
- возвращает
строковое представление этого перебираемого объекта или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этого перебираемого объекта или итератора следуют друг за другом без разделителя.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этого перебираемого объекта или итератора в строке с использованием разделительной строки.
- sep
разделительная строка.
- возвращает
строковое представление этого перебираемого объекта или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этого перебираемого объекта или итератора разделены строкойsep.
- Классы-определения
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого перебираемого объекта или итератора в строке с использованием начальной, конечной и разделительной строк.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- возвращает
строковое представление этого перебираемого объекта или итератора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (с помощью методаtoString) всех элементов этого перебираемого объекта или итератора разделены строкойsep.
- Классы-определения
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Классы-определения
- AnyRef
def next(): U
Возвращает следующий элемент этого итератора.
- возвращает
следующий элемент этого итератора, если
hasNextявляетсяtrue, в противном случае поведение не определено.
def nonEmpty: Boolean
Проверяет, не является ли перебираемый объект или итератор пустым.
- возвращает
trueесли перебираемый объект или итератор содержит хотя бы один элемент,falseв противном случае.
- Классы-определения
- TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуживает единственную нить, которая ожидает монитор объекта-приёмника.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано SLS в качестве члена AnyRef
final def notifyAll(): Unit
Разбуживает все нити, которые ожидают монитор объекта-приёмника.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано SLS в качестве члена AnyRef
def padTo(len: Int, elem: U): Iterator[U]
Добавляет значение элемента в этот итератор до достижения заданной длины.
- len
целевая длина
- elem
значение дополнения
- returns
новый итератор, состоящий из всех значений этого итератора, за которыми следует минимальное количество вхождений
elem, чтобы количество произведённых значений было по крайней мереlen.
- Definition Classes
- Iterator
def partition(p: (U) ⇒ Boolean): (Iterator[U], Iterator[U])
Разделяет этот итератор на два итератора в соответствии с предикатом.
- p
предикат для разделения
- returns
пара итераторов: итератор, удовлетворяющий предикату
p, и итератор, который не удовлетворяет. Относительный порядок элементов в результирующих итераторах совпадает с порядком в исходном итераторе.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода необходимо удалить итератор, на котором он был вызван, а также использовать только возвращенные итераторы. Использование старых итераторов не определено, может измениться и может привести к изменениям в новых итераторах.
def partition2combiners[U >: U, This](pred: (U) ⇒ Boolean, btrue: Combiner[U, This], bfalse: Combiner[U, This]): (Combiner[U, This], Combiner[U, This])
- Definition Classes
- AugmentedIterableIterator
def patch[B >: U](from: Int, patchElems: Iterator[B], replaced: Int): Iterator[B]
Возвращает этот итератор с изменёнными значениями. Замена по отрицательным индексам аналогична замене, начиная с 0. Замена по индексам, равным или большим длины исходного итератора, добавляет замену в конец. Если заменяется больше значений, чем существует, избыток игнорируется.
- from
Начальный индекс замены
- patchElems
Итератор значений замены
- replaced
Количество значений в исходном итераторе, которые заменяются заменой.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода нужно удалить итератор, на котором он был вызван, а также переданный в качестве параметра, и использовать только возвращенный итератор. Использование старых итераторов не определено, может измениться и может привести к изменениям в новом итераторе.
def patchParSeq[U >: U](from: Int, patchElems: SeqSplitter[U], replaced: Int): Patched[U]
- Definition Classes
- SeqSplitter
def prefixLength(pred: (U) ⇒ Boolean): Int
- Definition Classes
- AugmentedSeqIterator
def product: A
Произведение элементов этой коллекции.
- returns
произведение всех элементов в этом перебираемом объекте или итераторе чисел типа
Int. ВместоInt, может быть использован любой другой типTс неявнымNumeric[T]реализацией в качестве типа элемента перебираемого объекта или итератора и в качестве типа результатаproduct. Примерами таких типов являются:Long,Float,Double,BigInt.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
def psplit(sizes: Int*): scala.Seq[SeqSplitter[U]]
Разделяет разделитель на непересекающиеся представления.
Эта перегруженная версия метода split специфична для точных разделителей. Она возвращает последовательность разделителей, каждый из которых итерирует подмножество элементов в этом разделителе. Размеры подразделителей в разбиении равны размеру соответствующего аргумента, до тех пор, пока в этом разделителе достаточно элементов для такого разбиения.
Если элементов недостаточно, для каждого дополнительного аргумента добавляется разделитель с нулевым количеством элементов. Если есть дополнительные элементы, в конце добавляется дополнительный разделитель для компенсации.
Например, предположим, что у нас есть разделитель ps с 100 элементами. Вызов:
ps.split(50, 25, 25, 10, 5)
вернёт последовательность из пяти разделителей, последние два из которых пусты. С другой стороны, вызов:
ps.split(50, 40)
вернёт последовательность из трёх разделителей, последний из которых содержит десять элементов.
Примечание: этот метод фактически делает текущий разделитель недействительным.
В отличие от случая с split в разделителях, представления, возвращаемые этим методом, могут быть пустыми.
- sizes
размеры, используемые для разделения этого итератора разбиений на итераторы, которые проходят по непересекающимся подмножествам
- returns
последовательность непересекающихся итераторов подпоследовательностей этого параллельного итератора
- Definition Classes
- Appended → SeqSplitter → PreciseSplitter
def psplitWithSignalling(sizes: Int*): scala.Seq[SeqSplitter[U]]
- Definition Classes
- SeqSplitter
def reduce[U >: U](op: (U, U) ⇒ U): U
Вычисляет сведение элементов этого обходимого или итератора с помощью указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce
opмежду всеми элементами, если обходной или итератор не пуст.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если этот обходной или итератор пуст.
def reduceLeft[U >: U](howmany: Int, op: (U, U) ⇒ U): U
- Definition Classes
- AugmentedIterableIterator
def reduceLeft[B >: U](op: (B, U) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого обходимого или итератора слева направо.
Примечание: не будет завершаться для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого обходимого или итератора слева направо:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)где
x1, ..., xn— элементы этого обходимого или итератора.
- Definition Classes
- TraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот обходной или итератор пуст.
def reduceLeftOption[B >: U](op: (B, U) ⇒ B): Option[B]
Возвращает опцию результата применения бинарного оператора к всем элементам этого обходимого или итератора слева направо.
Примечание: не будет завершаться для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
опционное значение, содержащее результат
reduceLeft(op)если этот обходной или итератор не пуст,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: U](op: (A1, A1) ⇒ A1): Option[A1]
Уменьшает элементы этого итерируемого объекта или итератора, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
- A1
Параметр типа для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Значение типа Option, содержащее результат применения оператора reduce к всем элементам, если коллекция не пуста, и
Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceRight[B >: U](op: (U, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора, справа налево.
Примечание: не завершится для коллекций бесконечной размерности.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn- элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот итерируемый объект или итератор пуст.
def reduceRightOption[B >: U](op: (U, B) ⇒ B): Option[B]
Необязательное применение бинарного оператора ко всем элементам этого итерируемого объекта или итератора справа налево.
Примечание: не завершится для коллекций бесконечной размерности.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение Option, содержащее результат
reduceRight(op)если этот итерируемый объект или итератор не пуст,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def remaining: Int
Количество элементов, которые этот итератор еще должен обработать. Этот метод не изменяет состояние итератора.
Этот метод используется для предоставления подсказок о размере билдерам и комбинаторам, а также для приблизительной оценки позиции итераторов в структуре данных.
Примечание: Этот метод может быть реализован для возвращения верхней границы количества элементов в итераторе вместо точного значения. Параллельные коллекции, которые имеют такие итераторы, называются нестрогими коллекциями-разделителями.
В этом случае необходимо учитывать два момента:
1) классы, которые наследуют ParIterable, должны переопределять методы take, drop, slice, splitAt, copyToArray и все остальные, использующие эту информацию.
2) если итератор предоставляет верхнюю границу количества элементов, то после разделения сумма значений remaining разделенных итераторов должна быть меньше или равна этой верхней границе.
- Definition Classes
- Appended → IterableSplitter → RemainsIterator
def reverse: SeqSplitter[U]
- Definition Classes
- SeqSplitter
def reverse2combiner[U >: U, This](cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedSeqIterator
def reverseMap2combiner[S, That](f: (U) ⇒ S, cb: Combiner[S, That]): Combiner[S, That]
- Definition Classes
- AugmentedSeqIterator
def reversed: List[U]
- Attributes
- protected[this]
- Definition Classes
- TraversableOnce
def sameElements(that: Iterator[_]): Boolean
Проверяет, производит ли другой итератор те же значения, что и этот.
Примечание: не завершится для бесконечных итераторов.
- that
другой итератор
- returns
true, если оба итератора производят одни и те же элементы в том же порядке,falseв противном случае.
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить вызываемый и переданный в качестве параметра итераторы. Использование старых итераторов не определено и может измениться.
def scanLeft[B](z: B)(op: (B, U) ⇒ B): Iterator[B]
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершается для бесконечных итераторов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- returns
итератор с промежуточными результатами
- Definition Classes
- Iterator
- Note
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def scanRight[B](z: B)(op: (U, B) ⇒ B): Iterator[B]
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Головной элемент коллекции — это последний кумулятивный результат.
Примечание: не завершается для бесконечных итераторов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- returns
итератор с промежуточными результатами
- Definition Classes
- Iterator
- Note
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
Iterator(1, 2, 3, 4).scanRight(0)(_ + _).toList == List(10, 9, 7, 4, 0)
def scanToArray[U >: U, A >: U](z: U, op: (U, U) ⇒ U, array: Array[A], from: Int): Unit
- Definition Classes
- AugmentedIterableIterator
def scanToCombiner[U >: U, That](howmany: Int, startValue: U, op: (U, U) ⇒ U, cb: Combiner[U, That]): Combiner[U, That]
- Definition Classes
- AugmentedIterableIterator
def scanToCombiner[U >: U, That](startValue: U, op: (U, U) ⇒ U, cb: Combiner[U, That]): Combiner[U, That]
- Definition Classes
- AugmentedIterableIterator
def seq: Iterator[U]
Версия этой коллекции со всеми операциями, реализованными последовательно (т.е. в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределён для возвращения последовательной реализации этой коллекции. В обоих случаях у него сложность O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
def setIndexFlag(f: Int): Unit
Устанавливает значение флага индекса.
Флаг индекса хранит целое число, которое имеет определённый смысл для конкретной операции. Например, takeWhile операция устанавливает флаг индекса в позицию элемента, где предикат терпит неудачу. Другие рабочие потоки могут проверять этот индекс относительно индексов, с которыми они работают, и возвращаться, если этот индекс меньше их индекса. Примеры операций, использующих это: takeWhile, dropWhile, span и indexOf.
- f
значение, на которое устанавливается флаг индекса.
- Definition Classes
- DelegatedSignalling → Signalling
def setIndexFlagIfGreater(f: Int): Unit
Устанавливает значение флага индекса, если аргумент больше текущего значения. Этот метод выполняет это атомарно.
Флаг индекса хранит целое число, которое имеет определённый смысл, специфичный для операции. Например, операция takeWhile устанавливает флаг индекса в позицию элемента, где предикат терпит неудачу. Другие рабочие процессы могут сравнивать этот индекс с индексами, которые они обрабатывают, и возвращаться, если этот индекс меньше их индекса. Примеры операций, использующих это, это takeWhile, dropWhile, span и indexOf.
- f
значение, на которое устанавливается флаг индекса
- Definition Classes
- DelegatedSignalling → Signalling
def setIndexFlagIfLesser(f: Int): Unit
Устанавливает значение флага индекса, если аргумент меньше текущего значения. Этот метод выполняет это атомарно.
Флаг индекса хранит целое число, которое имеет определённый смысл, специфичный для операции. Например, операция takeWhile устанавливает флаг индекса в позицию элемента, где предикат терпит неудачу. Другие рабочие процессы могут сравнивать этот индекс с индексами, которые они обрабатывают, и возвращаться, если этот индекс меньше их индекса. Примеры операций, использующих это, это takeWhile, dropWhile, span и indexOf.
- f
значение, на которое устанавливается флаг индекса
- Definition Classes
- DelegatedSignalling → Signalling
def shouldSplitFurther[S](coll: ParIterable[S], parallelismLevel: Int): Boolean
- Definition Classes
- IterableSplitter
val signalDelegate: Signalling
Делегат, которому перенаправляются вызовы методов.
- Definition Classes
- IterableSplitter → DelegatedSignalling
def size: Int
Размер этого перечислимого объекта или итератора.
Примечание: не завершится для коллекций с бесконечным размером.
- returns
количество элементов в этом перечислимом объекте или итераторе.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если он может быть вычислен без больших затрат.
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер не может быть определён без больших затрат
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(from1: Int, until1: Int): SeqSplitter[U]
Создаёт итератор, возвращающий интервал значений, производимых этим итератором.
- returns
итератор, который переходит через этот итератор, пропуская первые
fromэлементы с помощьюdrop, и затем берётuntil - fromэлементов с помощьюtake.
- Definition Classes
- SeqSplitter → IterableSplitter → Iterator
- Note
Повторное использование: После вызова этого метода, следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора неопределённо, может измениться, и может привести к изменениям в новом итераторе тоже.
def slice2combiner[U >: U, This](from: Int, until: Int, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def sliceIterator(from: Int, until: Int): Iterator[U]
Создаёт необязательно ограниченный срез, неограниченный, если until отрицательный.
- Attributes
- protected
- Definition Classes
- Iterator
def sliding[B >: U](size: Int, step: Int = 1): GroupedIterator[B]
Возвращает итератор, представляющий "скользящее окно" этого итератора. Первый аргумент — размер окна, а второй аргумент step — на сколько позиций сдвигать окно на каждой итерации. step по умолчанию равно 1.
Значение по умолчанию GroupedIterator можно настроить так, чтобы либо заполнять частичный результат до размера size, либо полностью подавлять частичный результат.
Примеры использования:
// Returns List(List(1, 2, 3), List(2, 3, 4), List(3, 4, 5)) (1 to 5).iterator.sliding(3).toList // Returns List(List(1, 2, 3, 4), List(4, 5)) (1 to 5).iterator.sliding(4, 3).toList // Returns List(List(1, 2, 3, 4)) (1 to 5).iterator.sliding(4, 3).withPartial(false).toList // Returns List(List(1, 2, 3, 4), List(4, 5, 20, 25)) // Illustrating that withPadding's argument is by-name. val it2 = Iterator.iterate(20)(_ + 5) (1 to 5).iterator.sliding(4, 3).withPadding(it2.next).toList
- возвращает
Итератор, производящий
Seq[B]размеромsize, за исключением последнего элемента (который может быть единственным элементом), который будет усечён, если оставшихся элементов меньше, чемsize. Это поведение можно настроить.
- Определяющие классы
- Iterator
- Примечание
Переиспользование: после вызова этого метода нужно удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе также.
def span(p: (U) ⇒ Boolean): (Iterator[U], Iterator[U])
Разделяет этот итератор на пару префикс/суффикс в соответствии с предикатом.
- p
предикат проверки
- возвращает
пара итераторов, состоящая из самого длинного префикса этого, элементы которого удовлетворяют
p, и остальная часть итератора.
- Определяющие классы
- Iterator
- Примечание
Переиспользование: после вызова этого метода нужно удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах также.
def span2combiners[U >: U, This](p: (U) ⇒ Boolean, before: Combiner[U, This], after: Combiner[U, This]): (Combiner[U, This], Combiner[U, This])
- Определяющие классы
- AugmentedIterableIterator
def split: scala.Seq[SeqSplitter[U]]
Разделяет итератор на последовательность непересекающихся представлений.
Возвращает последовательность разделенных итераторов, каждый из которых итерирует по некоторому подмножеству элементов в коллекции. Эти подмножества не пересекаются и должны иметь примерно равный размер. Эти подмножества не пустые, если только итератор не пустой, в этом случае этот метод возвращает последовательность с одним пустым итератором. Если у разделителя больше двух элементов, этот метод вернёт два или более разделителя.
Реализаторам рекомендуется сохранять это разделение относительно небольшим — двух разделителей достаточно при разбиении коллекции, хотя может быть несколько больше.
Примечание: этот метод фактически делает текущий разделитель недействительным.
- возвращает
последовательность непересекающихся итераторов коллекции
- Определяющие классы
- Appended → SeqSplitter → PreciseSplitter → Appended → IterableSplitter → Splitter
def splitAt2combiners[U >: U, This](at: Int, before: Combiner[U, This], after: Combiner[U, This]): (Combiner[U, This], Combiner[U, This])
- Определяющие классы
- AugmentedIterableIterator
def splitWithSignalling: scala.Seq[SeqSplitter[U]]
- Определяющие классы
- SeqSplitter → IterableSplitter
def sum: A
Суммирует элементы этой коллекции.
- возвращает
сумму всех элементов в этом перебираемом или итераторе чисел типа
Int. ВместоInt, любой другой типTс неявнымNumeric[T]имплементацией может быть использован в качестве типа элементов перебираемого или итератора и в качестве типа результатаsum. Примерами таких типов являются:Long,Float,Double,BigInt.
- Определяющие классы
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Определяющие классы
- AnyRef
def tag: Int
Только для чтения тег, специфичный для объекта сигнализации. Используется для предоставления конкретным рабочим информации о части коллекции, над которой выполняется операция.
- Definition Classes
- DelegatedSignalling → Signalling
def take(n: Int): SeqSplitter[U]
Выбирает первые n значений этого итератора.
- n
количество значений для взятия
- returns
итератор, генерирующий только первые
nзначения этого итератора, или же весь итератор, если он генерирует меньше, чемnзначений.
- Definition Classes
- SeqSplitter → IterableSplitter → Iterator
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора неопределено, может быть изменено и может привести к изменениям в новом итераторе.
def take2combiner[U >: U, This](n: Int, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def takeWhile(p: (U) ⇒ Boolean): Iterator[U]
Берёт самую длинную префиксную последовательность значений, производимых этим итератором, которые удовлетворяют предикату.
- p
Предикат, используемый для проверки элементов.
- returns
Итератор, возвращающий значения, производимые этим итератором, пока этот итератор производит значения, удовлетворяющие предикату
p.
- Definition Classes
- Iterator
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора неопределено, может быть изменено и может привести к изменениям в новом итераторе.
def takeWhile2combiner[U >: U, This](p: (U) ⇒ Boolean, cb: Combiner[U, This]): (Combiner[U, This], Boolean)
- Definition Classes
- AugmentedIterableIterator
val that: PI
- Attributes
- protected
- Definition Classes
- Appended
def to[Col[_]]: Col[A]
Преобразует это итерабельное или итерирующееся множество в другое, копируя все элементы.
Примечание: не завершится для бесконечных итераторов.
- Col
Тип коллекции для построения.
- returns
новая коллекция, содержащая все элементы этого итерабельного или итерирующегося множества.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует это итерабельное или итерирующееся множество в массив.
Примечание: не завершится для бесконечных итераторов.
- returns
массив, содержащий все элементы этого итерабельного или итерирующегося множества. Должен быть доступен
ClassTagдля типа элементов этого итерабельного или итерирующегося множества.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toBuffer[B >: U]: Buffer[B]
Использует содержимое этого итерабельного или итерирующегося множества для создания нового изменяемого буфера.
Примечание: не завершится для бесконечных коллекций.
- returns
буфер, содержащий все элементы этого итерабельного или итерирующегося множества.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIndexedSeq: immutable.IndexedSeq[U]
Преобразует это итерабельное или итерирующееся множество в индексированную последовательность.
Примечание: не завершится для бесконечных коллекций.
- returns
индексированная последовательность, содержащая все элементы этого итерабельного или итерирующегося множества.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIterable: Iterable[U]
Преобразует это обобщенное множество или итератор в коллекцию iterable. Обратите внимание, что выбор целевого Iterable в этой реализации по умолчанию является ленивым, так как это TraversableOnce может быть ленивым и невычисляемым (т. е. это может быть итератор, который можно пройти только один раз).
Примечание: не завершится для коллекций бесконечного размера.
- returns
iterable, содержащий все элементы этого обобщенного множества или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIterator: Iterator[U]
Возвращает итератор над элементами в этом обобщенном множестве или итераторе. Вернет тот же итератор, если этот экземпляр уже является итератором.
Примечание: не завершится для бесконечных итераторов.
- returns
итератор, содержащий все элементы этого обобщенного множества или итератора.
- Definition Classes
- Iterator → GenTraversableOnce
def toList: List[U]
Преобразует это обобщенное множество или итератор в список.
Примечание: не завершится для коллекций бесконечного размера.
- returns
список, содержащий все элементы этого обобщенного множества или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toMap[T, U]: Map[T, U]
Преобразует это обобщенное множество или итератор в карту. Этот метод недоступен, если элементы не являются членами Tuple2, каждая ((T, U)) становится парой ключ-значение в карте. Повторные ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, какой ключ находится в результирующей карте, не определено.
Примечание: не завершится для бесконечных итераторов.
- returns
карта типа
immutable.Map[T, U], содержащая все пары ключ/значение типа(T, U)этого обобщенного множества или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toParArray: ParArray[T]
- Неявный
- Этот член добавляется неявным преобразованием из Appended[U, PI] в CollectionsHaveToParArray[Appended[U, PI], T] выполняемого методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование будет выполнено только в том случае, если в области видимости есть неявное значение типа (Appended[U, PI]) ⇒ GenTraversableOnce[T].
- Definition Classes
- CollectionsHaveToParArray
def toSeq: Seq[U]
Преобразует это обобщенное множество или итератор в последовательность. Как и в случае с toIterable, оно ленивое в этой реализации по умолчанию, так как это TraversableOnce может быть ленивым и невычисляемым.
Примечание: не завершится для коллекций бесконечного размера.
- returns
последовательность, содержащая все элементы этого обобщенного множества или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toSet[B >: U]: immutable.Set[B]
Преобразует это обобщенное множество или итератор в множество.
Примечание: не завершится для коллекций бесконечного размера.
- returns
множество, содержащее все элементы этого обобщенного множества или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toStream: immutable.Stream[U]
Преобразует это обобщенное множество или итератор в поток.
- returns
поток, содержащий все элементы этого обобщенного множества или итератора.
- Definition Classes
- Iterator → GenTraversableOnce
def toString(): String
Преобразует этот итератор в строку.
- returns
"<iterator>"пустой ли итератор.
def toTraversable: Traversable[U]
Преобразует этот итерируемый объект или итератор в неопределенный итерируемый объект. Вернёт ту же коллекцию, если этот экземпляр уже является итерируемым объектом.
Примечание: не завершит работу для бесконечных итераторов.
- возвращает
итерируемый объект, содержащий все элементы этого итерируемого объекта или итератора.
- Определяющие классы
- Iterator → TraversableOnce → GenTraversableOnce
def toVector: Vector[U]
Преобразует этот итерируемый объект или итератор в Vector.
Примечание: не завершит работу для коллекций бесконечного размера.
- возвращает
вектор, содержащий все элементы этого итерируемого объекта или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def updated2combiner[U >: U, That](index: Int, elem: U, cb: Combiner[U, That]): Combiner[U, That]
- Определяющие классы
- AugmentedSeqIterator
final def wait(): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @throws( ... )
final def wait(arg0: Long): Unit
def withFilter(p: (U) ⇒ Boolean): Iterator[U]
Создаёт итератор по всем элементам этого итератора, которые удовлетворяют предикату p. Порядок элементов сохраняется.
Примечание: withFilter эквивалентно filter для итераторов. Оно существует для того, чтобы выражения for с фильтрацией работали над итераторами.
- p
предикат, используемый для проверки значений.
- возвращает
итератор, который генерирует те значения из этого итератора, которые удовлетворяют предикату
p.
- Определяющие классы
- Iterator
- Примечание
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только итератор, который был возвращён. Использование старого итератора неопределено, может быть изменено и может привести к изменениям в новом итераторе.
def zip[B](that: Iterator[B]): Iterator[(U, B)]
Создаёт итератор, образованный из этого итератора и другого итератора, комбинируя соответствующие значения в пары. Если один из двух итераторов длиннее другого, его оставшиеся элементы игнорируются.
- that
Итератор, предоставляющий вторую половину каждой пары результата
- возвращает
новый итератор, содержащий пары, состоящие из соответствующих элементов этого итератора и
that. Количество элементов, возвращаемых новым итератором, является минимальным из количества элементов, возвращаемых этим итератором иthat.
- Определяющие классы
- Iterator
- Примечание
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, а также переданный в качестве параметра, и использовать только возвращённый итератор. Использование старых итераторов неопределено, может быть изменено и может привести к изменениям в новом итераторе.
def zip2combiner[U >: U, S, That](otherpit: RemainsIterator[S], cb: Combiner[(U, S), That]): Combiner[(U, S), That]
- Определяющие классы
- AugmentedIterableIterator
def zipAll[B](that: Iterator[B], thisElem: U, thatElem: B): Iterator[(U, B)]
Создаёт итератор, образованный из этого итератора и другого итератора путём объединения соответствующих элементов попарно. Если один из двух итераторов короче другого, элементы-заполнители используются для расширения более короткого итератора до длины более длинного.
- that
итератор
thatможет иметь другую длину, чем текущий итератор.- thisElem
элемент
thisElemиспользуется для заполнения результирующего итератора, если текущий итератор корочеthat- thatElem
элемент
thatElemиспользуется для заполнения результирующего итератора, еслиthatкороче текущего итератора- returns
новый итератор, содержащий пары, состоящие из соответствующих значений этого итератора и
that. Длина возвращаемого итератора — максимальная из длин этого итератора иthat. Если текущий итератор корочеthat, значенияthisElemиспользуются для дополнения результата. Еслиthatкороче текущего итератора, значенияthatElemиспользуются для дополнения результата.
- Definition Classes
- Iterator
def zipAll2combiner[U >: U, S, That](that: RemainsIterator[S], thiselem: U, thatelem: S, cb: Combiner[(U, S), That]): Combiner[(U, S), That]
- Definition Classes
- AugmentedIterableIterator
def zipAllParSeq[S, U >: U, R >: S](that: SeqSplitter[S], thisElem: U, thatElem: R): ZippedAll[U, R]
- Definition Classes
- SeqSplitter → IterableSplitter
def zipParSeq[S](that: SeqSplitter[S]): Zipped[S]
- Definition Classes
- SeqSplitter → IterableSplitter
def zipWithIndex: Iterator[(U, int)]
Создаёт итератор, который сопоставляет каждый элемент, созданный этим итератором, с его индексом, считая с 0.
- returns
новый итератор, содержащий пары, состоящие из соответствующих элементов этого итератора и их индексов.
- Definition Classes
- Iterator
- Примечание
Повторное использование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора неопределённо, может быть изменено и может привести к изменениям в новом итераторе тоже.
def →[B](y: B): (Appended[U, PI], B)
- Неявный
- Этот член добавлен неявным преобразованием из Appended[U, PI] в ArrowAssoc[Appended[U, PI]] посредством метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
Скрытые неявные члены значения
def filter(p: (U) ⇒ Boolean): TraversableOnce[U]
- Неявный
- Этот член добавлен неявным преобразованием из Appended[U, PI] в MonadOps[U] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(appended: MonadOps[U]).filter(p)
- Определяющие классы
- MonadOps
def flatMap[B](f: (U) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из Appended[U, PI] в MonadOps[U] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(appended: MonadOps[U]).flatMap(f)
- Определяющие классы
- MonadOps
def map[B](f: (U) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из Appended[U, PI] в MonadOps[U] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(appended: MonadOps[U]).map(f)
- Определяющие классы
- MonadOps
def withFilter(p: (U) ⇒ Boolean): Iterator[U]
- Неявный
- Этот член добавлен неявным преобразованием из Appended[U, PI] в MonadOps[U] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(appended: MonadOps[U]).withFilter(p)
- Определяющие классы
- MonadOps
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/parallel/SeqSplitter$Appended.html