Трейт scala.collection.parallel.SeqSplitter
trait SeqSplitter[+T] extends IterableSplitter[T] with AugmentedSeqIterator[T] with PreciseSplitter[T]
Типовые члены
class GroupedIterator[B >: A] extends AbstractIterator[Seq[B]] with Iterator[Seq[B]]
Гибкий итератор для преобразования Iterator[A] в Iterator[Seq[A]], с настраиваемым размером последовательности, шагом и стратегией обработки элементов, которые не укладываются равномерно.
Типичные варианты использования достигаются через методы grouped и sliding.
- Definition Classes
- Iterator
class Appended[U >: T, PI <: SeqSplitter[U]] extends SeqSplitter.Appended[U, PI] with SeqSplitter[U]
class Mapped[S] extends SeqSplitter.Mapped[S] with SeqSplitter[S]
class Patched[U >: T] extends SeqSplitter[U]
class Taken extends SeqSplitter.Taken with SeqSplitter[T]
class Zipped[S] extends SeqSplitter.Zipped[S] with SeqSplitter[(T, S)]
class ZippedAll[U >: T, S] extends SeqSplitter.ZippedAll[U, S] with SeqSplitter[(U, S)]
Члены-значения абстрактного типа
abstract def dup: SeqSplitter[T]
Создает копию этого итератора.
- Definition Classes
- SeqSplitter → IterableSplitter
abstract def hasNext: Boolean
Проверяет, может ли этот итератор предоставить ещё один элемент.
- returns
trueесли последующее вызовnextвернёт элемент,falseв противном случае.
- Definition Classes
- Iterator
- Note
Переиспользование: итератор остаётся валидным для дальнейшего использования, независимо от возвращаемого результата.
abstract def next(): T
Возвращает следующий элемент этого итератора.
- returns
следующий элемент этого итератора, если
hasNexttrue, в противном случае поведение не определено.
- Definition Classes
- Iterator
- Note
Переиспользование: итератор остаётся валидным для дальнейшего использования, независимо от возвращаемого результата.
abstract def psplit(sizes: Int*): scala.Seq[SeqSplitter[T]]
Разделяет итератор на отдельные представления.
Этот перегруженный вариант метода split специфичен для точных итераторов. Он возвращает последовательность итераторов, каждый из которых итерирует некоторое подмножество элементов в этом итераторе. Размеры под-итераторов в разбиении равны размеру соответствующего аргумента, до тех пор, пока в этом итераторе достаточно элементов для такого разбиения.
Если элементов недостаточно, для каждого дополнительного аргумента добавляется итератор с нулевыми элементами. Если элементов больше, чем требуется, в конце добавляется дополнительный итератор для компенсации.
Например, предположим, что у нас есть итератор ps с 100 элементами. Вызов:
ps.split(50, 25, 25, 10, 5)
вернёт последовательность из пяти итераторов, последние два из которых будут пустыми. С другой стороны, вызов:
ps.split(50, 40)
вернёт последовательность из трёх итераторов, последний из которых содержит десять элементов.
Примечание: этот метод фактически делает текущий итератор недействительным.
В отличие от случая с split в итераторах, представления, возвращаемые этим методом, могут быть пустыми.
- sizes
размеры, используемые для разделения этого итератора на итераторы, которые обходят непересекающиеся подмножества
- returns
последовательность непересекающихся итераторов подпоследовательностей этого параллельного итератора
- Definition Classes
- SeqSplitter → PreciseSplitter
abstract def remaining: Int
Количество элементов, которые этот итератор ещё должен пройти. Этот метод не изменяет состояние итератора. В отличие от версии этого метода в супертрайте, метод remaining в ParSeqLike.this.ParIterator должен возвращать точное число элементов, оставшихся в итераторе.
- returns
точное количество элементов, которые этот итератор ещё должен пройти
- Definition Classes
- SeqSplitter → AugmentedSeqIterator → IterableSplitter → RemainsIterator
abstract def split: scala.Seq[SeqSplitter[T]]
Разделяет итератор на последовательность непересекающихся представлений.
Возвращает последовательность разделяемых итераторов, каждый из которых итерирует некоторое подмножество элементов в коллекции. Эти подмножества не пересекаются и должны быть примерно одинакового размера. Эти подмножества не пусты, за исключением случая, когда итератор пуст, в этом случае этот метод возвращает последовательность с одним пустым итератором. Если у итератора более двух элементов, этот метод вернёт два или более итератора.
Реализаторам рекомендуется сохранять это разбиение относительно небольшим - двух итераторов уже достаточно для разбиения коллекции, хотя может быть несколько больше.
Примечание: этот метод фактически делает текущий итератор недействительным.
- returns
последовательность непересекающихся итераторов коллекции
- Definition Classes
- SeqSplitter → PreciseSplitter → IterableSplitter → Splitter
Члены-значения
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
- Неявный
- Этот член добавляется неявным преобразованием из SeqSplitter[T] в any2stringadd[SeqSplitter[T]], выполненное методом any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
def ++(that: ⇒ Iterator[T]): Iterator[T]
Конкатенация данного итератора с другим.
- that
другой итератор
- returns
новый итератор, который сначала возвращает значения, производимые данным итератором, а затем значения, производимые итератором
that.
- Definition Classes
- Iterator
def ->[B](y: B): (SeqSplitter[T], B)
- Неявный
- Этот член добавляется неявным преобразованием из SeqSplitter[T] в ArrowAssoc[SeqSplitter[T]], выполненное методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Аннотации
- @inline()
def /:[B](z: B)(op: (B, T) ⇒ 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: (T, 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, T) ⇒ 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 >: T, PI <: IterableSplitter[U]](that: PI): SeqSplitter.Appended[U, PI]
- Definition Classes
- IterableSplitter
def appendParSeq[U >: T, PI <: SeqSplitter[U]](that: PI): Appended[U, PI]
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[T]
Создает буферизованный итератор из данного итератора.
- 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[T, B]): Iterator[B]
Создаёт итератор, преобразуя значения, генерируемые этим итератором, с помощью частичной функции, отбрасывая те значения, для которых частичная функция не определена.
- pf
частичная функция, которая фильтрует и отображает итератор.
- returns
новый итератор, который возвращает каждое значение
xгенерируемое этим итератором, для которогоpfопределена, а изображениеpf(x).
- Definition Classes
- Iterator
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.8.0)
collectизменилось. Предыдущее поведение может быть воспроизведено с помощьюtoSeq.- Примечание
Повторное использование: После вызова этого метода следует удалить вызвавшийся итератор, и использовать только возвращённый. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе тоже.
def collect2combiner[S, That](pf: PartialFunction[T, S], cb: Combiner[S, That]): Combiner[S, That]
- Definition Classes
- AugmentedIterableIterator
def collectFirst[B](pf: PartialFunction[T, 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
элемент для проверки.
- returns
true если этот итератор производит какое-то значение, равное (как определено
==)elem,falseв противном случае.
- Definition Classes
- Iterator
- Примечание
Повторное использование: После вызова этого метода следует удалить вызвавшийся итератор. Использование старого итератора не определено и может измениться.
def copy2builder[U >: T, Coll, Bld <: Builder[U, Coll]](b: Bld): Bld
- Definition Classes
- AugmentedIterableIterator
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует выбранные значения, генерируемые этим итератором, в массив. Заполняет заданный массив xs начиная с индекса start не более чем len значениями, генерируемыми этим итератором. Копирование завершится, когда будет достигнут конец текущего итератора, конец массива или будет скопировано len элементов.
Примечание: не завершится для бесконечных итераторов.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество элементов для копирования.
- Definition Classes
- AugmentedIterableIterator → Iterator → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A]): Unit
Копирует элементы этого обозримого объекта или итератора в массив. Заполняет заданный массив xs значениями этого обозримого объекта или итератора. Копирование завершится, когда будет достигнут конец текущего обозримого объекта или итератора или конец целевого массива.
Примечание: не завершится для бесконечных итераторов.
- xs
массив для заполнения.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этого обозримого объекта или итератора в массив. Заполняет заданный массив xs значениями этого обозримого объекта или итератора, начиная с индекса start. Копирование завершится, когда будет достигнут конец текущего обозримого объекта или итератора или конец целевого массива.
Примечание: не завершится для бесконечных итераторов.
- xs
массив для заполнения.
- start
начальный индекс.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: T](dest: Buffer[B]): Unit
Копирует все элементы этого обозримого объекта или итератора в буфер.
Примечание: не завершится для бесконечных коллекций.
- dest
Буфер, в который копируются элементы.
- Definition Classes
- TraversableOnce
def corresponds[S](corr: (T, S) ⇒ Boolean)(that: scala.Iterator[S]): Boolean
- Definition Classes
- AugmentedSeqIterator
def corresponds[B](that: GenTraversableOnce[B])(p: (T, B) ⇒ Boolean): Boolean
Проверяет, удовлетворяет ли каждый элемент этого итератора соответствующему элементу другой коллекции, удовлетворяя условию предиката.
- B
тип элементов
that- that
другая коллекция
- p
предикат, который связывает элементы обеих коллекций
- returns
trueесли обе коллекции имеют одинаковую длину иp(x, y)равноtrueдля всех соответствующих элементовxэтого итератора иythat, в противном случаеfalse
- Definition Classes
- Iterator
def count(p: (T) ⇒ Boolean): Int
Подсчитывает количество элементов в обозримом объекте или итераторе, удовлетворяющих предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
def drop(n: Int): IterableSplitter[T]
Drop реализован как простое жадное потребление.
- n
количество элементов для удаления
- returns
итератор, который генерирует все значения текущего итератора, кроме первых
nзначений.
- Definition Classes
- IterableSplitter → Iterator
def drop2combiner[U >: T, This](n: Int, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def dropWhile(p: (T) ⇒ Boolean): Iterator[T]
Пропускает самую длинную последовательность элементов этого итератора, удовлетворяющих заданному предикату p, и возвращает итератор оставшихся элементов.
- p
предикат, используемый для пропуска элементов.
- returns
итератор, состоящий из оставшихся элементов
- Definition Classes
- Iterator
- Note
Переиспользование: после вызова этого метода нужно удалить итератор, на котором он был вызван, и использовать только итератор, который был возвращен. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе.
def duplicate: (Iterator[T], Iterator[T])
Создает два новых итератора, которые оба итерируют по тем же элементам, что и этот итератор (в том же порядке). Дублирующие итераторы считаются равными, если они расположены на том же элементе.
Учитывая, что большинство методов итераторов сделают исходный итератор непригодным для дальнейшего использования, этот метод предоставляет надежный способ вызова нескольких таких методов для итератора.
- returns
пара итераторов
- Definition Classes
- Iterator
- Note
-
Реализация может выделять временное хранилище для элементов, проитерированных одним итератором, но еще не другим.
,Переиспользование: после вызова этого метода нужно удалить итератор, на котором он был вызван, и использовать только возвращенные итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах.
def ensuring(cond: (SeqSplitter[T]) ⇒ Boolean, msg: ⇒ Any): SeqSplitter[T]
- Implicit
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в Ensuring[SeqSplitter[T]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (SeqSplitter[T]) ⇒ Boolean): SeqSplitter[T]
- Implicit
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в Ensuring[SeqSplitter[T]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): SeqSplitter[T]
- Implicit
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в Ensuring[SeqSplitter[T]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): SeqSplitter[T]
- Implicit
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в Ensuring[SeqSplitter[T]] выполненным методом Ensuring в scala.Predef.
- Definition Classes
- 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).
- returns
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def equals(arg0: Any): Boolean
Метод равенства для типов ссылок. Реализация по умолчанию делегирует вызов eq.
См. также equals в scala.Any.
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def exists(p: (T) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для некоторых значений, производимых этим итератором.
Примечание: может не завершиться для бесконечных итераторов.
- p
предикат, используемый для проверки элементов.
- returns
trueесли заданный предикатpвыполняется для некоторых значений, производимых этим итератором, в противном случаеfalse.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
- Note
Переиспользование: После вызова этого метода, необходимо избавиться от итератора, на котором он был вызван. Использование его в дальнейшем не определено и может быть изменено.
def filter(p: (T) ⇒ Boolean): Iterator[T]
Возвращает итератор по всем элементам этого итератора, удовлетворяющим предикату p. Порядок элементов сохраняется.
- p
предикат, используемый для проверки значений.
- returns
итератор, который генерирует те значения из этого итератора, которые удовлетворяют предикату
p.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода, необходимо избавиться от итератора, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def filter2combiner[U >: T, This](pred: (T) ⇒ Boolean, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def filterNot(p: (T) ⇒ Boolean): Iterator[T]
Создаёт итератор по всем элементам этого итератора, которые не удовлетворяют предикату p.
- p
предикат, используемый для проверки значений.
- returns
итератор, который генерирует те значения из этого итератора, которые не удовлетворяют предикату
p.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода, необходимо избавиться от итератора, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def filterNot2combiner[U >: T, This](pred: (T) ⇒ 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: (T) ⇒ Boolean): Option[T]
Находит первое значение, производимое итератором, удовлетворяющее предикату, если таковое имеется.
Примечание: может не завершиться для бесконечных итераторов.
- p
предикат, используемый для проверки значений.
- returns
значение типа Option, содержащее первое значение, производимое итератором, которое удовлетворяет предикату
p, илиNoneесли такового не существует.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
- Note
Переиспользование: После вызова этого метода следует отбросить итератор, на котором он был вызван. Использование его не определено и может быть изменено.
def flatMap[B](f: (T) ⇒ GenTraversableOnce[B]): Iterator[B]
Создает новый итератор, применяя функцию ко всем значениям, производимым этим итератором, и конкатенируя результаты.
- f
функция, применяемая к каждому элементу.
- returns
итератор, полученный путем применения данной функции, возвращающей итератор
fк каждому значению, производимому этим итератором, и конкатенации результатов.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода следует отбросить итератор, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def flatmap2combiner[S, That](f: (T) ⇒ GenTraversableOnce[S], cb: Combiner[S, That]): Combiner[S, That]
- Definition Classes
- AugmentedIterableIterator
def fold[U >: T](z: U)(op: (U, U) ⇒ U): U
Вычисляет результирующее значение, комбинируя элементы этого обхода или итератора с помощью указанной ассоциативной бинарной операции.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
Примечание: не завершит работу для бесконечных итераторов.
- z
нейтральный элемент для операции fold; может быть добавлен к результату произвольное число раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарная операция, которая должна быть ассоциативной.
- returns
результат применения оператора fold
opмежду всеми элементами иz, илиzесли этот обход или итератор пустой.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
def foldLeft[B](z: B)(op: (B, T) ⇒ 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: (T, 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: (T) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех значений, производимых этим итератором.
Примечание: может не завершаться для бесконечных итераторов.
- p
предикат, используемый для проверки элементов.
- returns
trueесли данный предикатpвыполняется для всех значений, производимых этим итератором, в противном случаеfalse.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
- Note
Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Использование его не определено и может быть изменено.
def foreach(f: (T) ⇒ Unit): Unit
Применяет функцию f ко всем значениям, производимым этим итератором.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fигнорируется.
- Definition Classes
- Iterator → TraversableOnce → GenTraversableOnce
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной format строкой. Форматные строки аналогичны String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавляется неявным преобразованием из SeqSplitter[T] в StringFormat[SeqSplitter[T]] выполненным методом StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Аннотации
- @inline()
final def getClass(): Class[_]
Возвращает представление класса во время выполнения объекта.
- returns
объект класса, соответствующий типу времени выполнения получателя.
def grouped[B >: T](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 hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- returns
значение хэш-кода для этого объекта.
def indexFlag: Int
Возвращает значение флага индекса.
Флаг индекса содержит целое число, которое имеет определённый смысл, специфичный для операции. Например, операция takeWhile устанавливает флаг индекса в позицию элемента, где предикат не выполняется. Другие рабочие процессы могут проверять этот индекс по отношению к индексам, с которыми они работают, и возвращаться, если этот индекс меньше их индекса. Примеры операций, использующих это, — takeWhile, dropWhile, span и indexOf.
- returns
значение флага индекса
- Definition Classes
- DelegatedSignalling → Signalling
def indexOf[B >: T](elem: B, from: Int): Int
Возвращает индекс первого вхождения заданного объекта в этом итерируемом объекте после или на некотором начальном индексе.
Примечание: может не завершаться для бесконечных итераторов.
- elem
элемент для поиска.
- from
начальный индекс
- returns
индекс
>= fromпервого вхожденияelemв значениях, производимых этим итератором, или -1, если такой элемент не существует до достижения конца итератора.
- Definition Classes
- Iterator
- Note
Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Использование его не определено и может быть изменено.
def indexOf[B >: T](elem: B): Int
Возвращает индекс первого вхождения указанного объекта в этом итерируемом объекте.
Примечание: может не завершиться для бесконечных итераторов.
- elem
элемент для поиска.
- returns
индекс первого вхождения
elemв значениях, производимых этим итератором, или -1, если такой элемент не существует до достижения конца итератора.
- Definition Classes
- Iterator
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться.
def indexWhere(pred: (T) ⇒ Boolean): Int
Возвращает индекс первого значения, удовлетворяющего предикату, или -1.
Примечание: может не завершиться для бесконечных итераторов.
- returns
индекс первого произведённого значения, удовлетворяющего
p, или -1, если такой элемент не существует до достижения конца итератора.
- Definition Classes
- AugmentedSeqIterator → Iterator
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться.
def indexWhere(p: (T) ⇒ 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: (T) ⇒ Boolean): Int
- Definition Classes
- AugmentedSeqIterator
def length: Int
Возвращает количество элементов в этом итераторе.
Примечание: не завершится для бесконечных итераторов.
- Definition Classes
- Iterator
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться.
def map[S](f: (T) ⇒ S): Mapped[S]
Создаёт новый итератор, который отображает все произведённые значения этого итератора в новые значения с помощью функции преобразования.
- f
функция преобразования
- returns
новый итератор, который преобразует каждое значение, производимое этим итератором, путём применения функции
fк нему.
- Definition Classes
- SeqSplitter → IterableSplitter → Iterator
- Note
Использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе.
def map2combiner[S, That](f: (T) ⇒ S, cb: Combiner[S, That]): Combiner[S, That]
- Definition Classes
- AugmentedIterableIterator
def max: A
Находит наибольший элемент.
- returns
наибольший элемент этого обхода или итератора.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот обход или итератор пустой.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого обхода или итератора с наибольшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот обход или итератор пустой.
def min: A
Находит наименьший элемент.
- returns
наименьший элемент этого обхода или итератора
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот обход или итератор пустой.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого обхода или итератора с наименьшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот обход или итератор пустой.
def mkString: String
Отображает все элементы этого обхода или итератора в строке.
- returns
строковое представление этого обхода или итератора. В результирующей строке строковые представления (относительно метода
toString) всех элементов этого обхода или итератора следуют друг за другом без разделительной строки.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этого обхода или итератора в строке, используя разделительную строку.
- sep
разделительная строка.
- returns
строковое представление этого обхода или итератора. В результирующей строке строковые представления (относительно метода
toString) всех элементов этого обхода или итератора разделяются строкойsep.
- Definition Classes
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого обхода или итератора в строке, используя начальную, конечную и разделительные строки.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковое представление этого обхода или итератора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (относительно методаtoString) всех элементов этого обхода или итератора разделяются строкойsep.
- Definition Classes
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
trueесли аргумент не ссылка на объект получателя;falseв противном случае.
- Классы-определения
- AnyRef
def nonEmpty: Boolean
Проверяет, не пуст ли итерируемый объект или итератор.
- возвращает
trueесли итерируемый объект или итератор содержат по крайней мере один элемент,falseв противном случае.
- Классы-определения
- TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуждает один поток, ожидающий монитора объекта получателя.
- Классы-определения
- AnyRef
- Аннотации
- @native()
- Примечание
не указано в SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все потоки, ожидающие монитора объекта получателя.
- Классы-определения
- AnyRef
- Аннотации
- @native()
- Примечание
не указано в SLS как член AnyRef
def padTo(len: Int, elem: T): Iterator[T]
Добавляет значение элемента к этому итератору до достижения заданной длины.
- len
целевая длина
- elem
значение заполнения
- возвращает
новый итератор, состоящий из всех значений этого итератора, за которым следует минимальное количество вхождений
elem, так что количество сгенерированных значений составляет по крайней мереlen.
- Классы-определения
- Iterator
def partition(p: (T) ⇒ Boolean): (Iterator[T], Iterator[T])
Разделяет этот итератор на два итератора в соответствии с предикатом.
- p
предикат для разделения
- возвращает
пара итераторов: итератор, удовлетворяющий предикату
p, и итератор, который не удовлетворяет ему. Относительный порядок элементов в результирующих итераторах совпадает с порядком в исходном итераторе.
- Классы-определения
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора неопределено, может измениться и может привести к изменениям в новых итераторах тоже.
def partition2combiners[U >: T, This](pred: (T) ⇒ Boolean, btrue: Combiner[U, This], bfalse: Combiner[U, This]): (Combiner[U, This], Combiner[U, This])
- Классы-определения
- AugmentedIterableIterator
def patch[B >: T](from: Int, patchElems: Iterator[B], replaced: Int): Iterator[B]
Возвращает этот итератор с изменёнными значениями. Замена по отрицательным индексам эквивалентна замене, начинающейся с 0. Замена по индексам, равным или большим длины исходного итератора, добавляет замену в конец. Если заменяется больше значений, чем существует, избыток игнорируется.
- from
Начальный индекс замены
- patchElems
Итератор значений замены
- replaced
Количество значений в исходном итераторе, заменяемых заменой.
- Классы-определения
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, а также переданный в качестве параметра итератор, и использовать только возвращённый итератор. Использование старых итераторов неопределено, может измениться и может привести к изменениям в новом итераторе тоже.
def patchParSeq[U >: T](from: Int, patchElems: SeqSplitter[U], replaced: Int): Patched[U]
def prefixLength(pred: (T) ⇒ Boolean): Int
- Классы-определения
- AugmentedSeqIterator
def product: A
Перемножает элементы этой коллекции.
- returns
произведение всех элементов в этом итерируемом объекте или итераторе чисел типа
Int. ВместоInt, можно использовать любой другой типTс неявной реализациейNumeric[T]в качестве типа элементов итерируемого объекта или итератора и в качестве типа результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
def psplitWithSignalling(sizes: Int*): scala.Seq[SeqSplitter[T]]
def reduce[U >: T](op: (U, U) ⇒ U): U
Сводит элементы этого итерируемого объекта или итератора с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce
opмежду всеми элементами, если итерируемый объект или итератор не пуст.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот итерируемый объект или итератор пуст.
def reduceLeft[U >: T](howmany: Int, op: (U, U) ⇒ U): U
- Definition Classes
- AugmentedIterableIterator
def reduceLeft[B >: T](op: (B, T) ⇒ 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 >: T](op: (B, T) ⇒ B): Option[B]
Факультативно применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение Option, содержащее результат
reduceLeft(op), если этот итерируемый объект или итератор не пуст,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: T](op: (A1, A1) ⇒ A1): Option[A1]
Сводит элементы этого итерируемого объекта или итератора (если они есть) с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Параметр типа для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Значение Option, содержащее результат применения оператора reduce
opмежду всеми элементами, если коллекция не пуста, иNoneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceRight[B >: T](op: (T, 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 >: T](op: (T, B) ⇒ B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции-источника упорядочен или оператор является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение Option, содержащее результат
reduceRight(op), если этот итерируемый объект или итератор не пуст,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reverse: SeqSplitter[T]
def reverse2combiner[U >: T, This](cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedSeqIterator
def reverseMap2combiner[S, That](f: (T) ⇒ S, cb: Combiner[S, That]): Combiner[S, That]
- Definition Classes
- AugmentedSeqIterator
def reversed: Список[T]
- Attributes
- protected[this]
- Definition Classes
- TraversableOnce
def sameElements(that: Итератор[_]): Boolean
Проверяет, генерирует ли другой итератор те же значения, что и этот.
Примечание: не будет завершаться для бесконечных итераторов.
- that
другой итератор
- returns
true, если оба итератора генерируют те же элементы в том же порядке,falseв противном случае.
- Definition Classes
- Итератор
- Примечание
Повторное использование: после вызова этого метода необходимо удалить итератор, на котором он был вызван, а также переданный в качестве параметра. Использование старых итераторов не определено и может быть изменено.
def scanLeft[B](z: B)(op: (B, T) ⇒ B): Итератор[B]
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не будет завершаться для бесконечных итераторов.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции-источника упорядочен.
- B
тип элементов в результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- returns
итератор с промежуточными результатами
- Definition Classes
- Итератор
- Примечание
Повторное использование: после вызова этого метода необходимо удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено, и может привести к изменениям в новом итераторе.
def scanRight[B](z: B)(op: (T, B) ⇒ B): Итератор[B]
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — это последний кумулятивный результат.
Примечание: не завершается для бесконечных итераторов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- returns
итератор с промежуточными результатами
- Классы-определения
- Iterator
- Примечание
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
Iterator(1, 2, 3, 4).scanRight(0)(_ + _).toList == List(10, 9, 7, 4, 0)
def scanToArray[U >: T, A >: U](z: U, op: (U, U) ⇒ U, array: Array[A], from: Int): Unit
- Классы-определения
- AugmentedIterableIterator
def scanToCombiner[U >: T, That](howmany: Int, startValue: U, op: (U, U) ⇒ U, cb: Combiner[U, That]): Combiner[U, That]
- Классы-определения
- AugmentedIterableIterator
def scanToCombiner[U >: T, That](startValue: U, op: (U, U) ⇒ U, cb: Combiner[U, That]): Combiner[U, That]
- Классы-определения
- AugmentedIterableIterator
def seq: Iterator[T]
Версия этой коллекции со всеми операциями, реализованными последовательно (т.е., в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределён для возврата последовательной реализации этой коллекции. В обоих случаях имеет сложность O(1).
- returns
последовательный вид коллекции.
- Классы-определения
- Iterator → TraversableOnce → GenTraversableOnce
def setIndexFlag(f: Int): Unit
Устанавливает значение флага индекса.
Флаг индекса содержит целое число, которое несёт определённый смысл, специфичный для операции. Например, операция takeWhile устанавливает флаг индекса в позицию элемента, где предикат терпит неудачу. Другие рабочие процессы могут проверять этот индекс по отношению к индексам, над которыми они работают, и возвращаться, если этот индекс меньше их индекса. Примеры операций, использующих это, — takeWhile, dropWhile, span и indexOf.
- f
значение, на которое устанавливается флаг индекса.
- Классы-определения
- DelegatedSignalling → Signalling
def setIndexFlagIfGreater(f: Int): Unit
Устанавливает значение флага индекса, если аргумент больше текущего значения. Этот метод делает это атомарно.
Флаг индекса содержит целое число, которое несёт определённый смысл, специфичный для операции. Например, операция takeWhile устанавливает флаг индекса в позицию элемента, где предикат терпит неудачу. Другие рабочие процессы могут проверять этот индекс по отношению к индексам, над которыми они работают, и возвращаться, если этот индекс меньше их индекса. Примеры операций, использующих это, — takeWhile, dropWhile, span и indexOf.
- f
значение, на которое устанавливается флаг индекса
- Классы-определения
- DelegatedSignalling → Signalling
def setIndexFlagIfLesser(f: Int): Unit
Устанавливает значение флага индекса, если аргумент меньше текущего значения. Этот метод делает это атомарно.
Флаг индекса содержит целое число, которое несёт определённый смысл, специфичный для операции. Например, операция takeWhile устанавливает флаг индекса в позицию элемента, где предикат терпит неудачу. Другие рабочие процессы могут проверять этот индекс по отношению к индексам, над которыми они работают, и возвращаться, если этот индекс меньше их индекса. Примеры операций, использующих это, — takeWhile, dropWhile, span и indexOf.
- f
значение, на которое устанавливается флаг индекса
- Классы-определения
- DelegatedSignalling → Signalling
def shouldSplitFurther[S](coll: ParIterable[S], parallelismLevel: Int): Boolean
- Definition Classes
- IterableSplitter
val signalDelegate: Signalling
Делегат, к которому перенаправляются вызовы методов.
- Definition Classes
- IterableSplitter → DelegatedSignalling
def size: Int
Размер этого итератора или обходимого значения.
Примечание: не завершится для коллекций бесконечного размера.
- возвращает
количество элементов в этом итераторе или обходе.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def sizeHintIfCheap: Int
Размер этого набора или итератора, если его можно вычислить недорого
- возвращает
количество элементов в этом наборе или итераторе, или -1, если размер нельзя определить недорого
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(from1: Int, until1: Int): SeqSplitter[T]
Создает итератор, возвращающий интервал значений, генерируемых этим итератором.
- возвращает
итератор, который перемещает этот итератор мимо первых
fromэлементов, используяdrop, и затем беретuntil - fromэлементов, используяtake.
- Definition Classes
- SeqSplitter → IterableSplitter → Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора неопределено, может быть изменено и может привести к изменениям в новом итераторе также.
def slice2combiner[U >: T, This](from: Int, until: Int, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def sliceIterator(from: Int, until: Int): Iterator[T]
Создаёт срез, необязательно ограниченный, неограниченный, если until отрицателен.
- Attributes
- protected
- Definition Classes
- Iterator
def sliding[B >: T](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. Это поведение можно настроить.
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора неопределено, может быть изменено и может привести к изменениям в новом итераторе также.
def span(p: (T) ⇒ Boolean): (Iterator[T], Iterator[T])
Разделяет этот итератор на пару префикс/суффикс в соответствии с предикатом.
- p
предикат проверки
- возвращает
пару итераторов, состоящих из самого длинного префикса этого, элементы которого удовлетворяют
p, и остальной части итератора.
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора неопределено, может быть изменено и может привести к изменениям в новых итераторах также.
def span2combiners[U >: T, This](p: (T) ⇒ Boolean, before: Combiner[U, This], after: Combiner[U, This]): (Combiner[U, This], Combiner[U, This])
- Definition Classes
- AugmentedIterableIterator
def splitAt2combiners[U >: T, This](at: Int, before: Combiner[U, This], after: Combiner[U, This]): (Combiner[U, This], Combiner[U, This])
- Definition Classes
- AugmentedIterableIterator
def splitWithSignalling: scala.Seq[SeqSplitter[T]]
- Definition Classes
- SeqSplitter → IterableSplitter
def sum: A
Суммирует элементы этого набора.
- возвращает
сумма всех элементов в этом перечисляемом или итераторе чисел типа
Int. ВместоInt, может быть использован любой другой типTс неявной реализациейNumeric[T]в качестве типа элемента перечисляемого или итератора и как тип результатаsum. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- AugmentedIterableIterator → TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
def tag: Int
Только для чтения метка, специфичная для объекта сигнализации. Она используется, чтобы предоставить определенным рабочим информацию о части коллекции, над которой выполняется операция.
- Definition Classes
- DelegatedSignalling → Signalling
def take(n: Int): SeqSplitter[T]
Выбирает первые n значений этого итератора.
- n
количество значений для выбора
- возвращает
итератор, генерирующий только первые
nзначения этого итератора, или же весь итератор, если он генерирует меньше чемnзначений.
- Definition Classes
- SeqSplitter → IterableSplitter → Iterator
- Примечание
Переиспользование: После вызова этого метода, нужно удалить итератор, на котором был вызван метод, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def take2combiner[U >: T, This](n: Int, cb: Combiner[U, This]): Combiner[U, This]
- Definition Classes
- AugmentedIterableIterator
def takeWhile(p: (T) ⇒ Boolean): Iterator[T]
Выбирает самую длинную префиксную последовательность значений, генерируемых этим итератором, которые удовлетворяют предикату.
- p
Предикат, используемый для проверки элементов.
- возвращает
Итератор, возвращающий значения, генерируемые этим итератором, до тех пор, пока этот итератор не сгенерирует значение, которое не удовлетворяет предикату
p.
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода, нужно удалить итератор, на котором был вызван метод, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def takeWhile2combiner[U >: T, This](p: (T) ⇒ Boolean, cb: Combiner[U, This]): (Combiner[U, This], Boolean)
- Definition Classes
- AugmentedIterableIterator
def to[Col[_]]: Col[A]
Преобразует эту последовательность или итератор в другую, копируя все элементы.
Примечание: не завершится для бесконечных итераторов.
- Col
Тип коллекции для построения.
- returns
новая коллекция, содержащая все элементы этой последовательности или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует эту последовательность или итератор в массив.
Примечание: не завершится для бесконечных итераторов.
- returns
массив, содержащий все элементы этой последовательности или итератора. Должен быть доступен
ClassTagдля типа элемента этой последовательности или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toBuffer[B >: T]: Buffer[B]
Использует содержимое этой последовательности или итератора для создания нового изменяемого буфера.
Примечание: не завершится для коллекций бесконечного размера.
- returns
буфер, содержащий все элементы этой последовательности или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIndexedSeq: immutable.IndexedSeq[T]
Преобразует эту последовательность или итератор в индексированную последовательность.
Примечание: не завершится для коллекций бесконечного размера.
- returns
индексированная последовательность, содержащая все элементы этой последовательности или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIterable: Iterable[T]
Преобразует эту последовательность или итератор в итерируемую коллекцию. Обратите внимание, что выбор целевого Iterable в этом реализацией по умолчанию является ленивым, так как эта TraversableOnce может быть ленивой и не вычисленной (т.е. это может быть итератор, который может быть пройден только один раз).
Примечание: не завершится для коллекций бесконечного размера.
- returns
итерируемая
Iterableсодержащая все элементы этой последовательности или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIterator: Iterator[T]
Возвращает итератор по элементам в этой последовательности или итераторе. Возвратит тот же итератор, если этот экземпляр уже является итератором.
Примечание: не завершится для бесконечных итераторов.
- returns
итератор, содержащий все элементы этой последовательности или итератора.
- Definition Classes
- Iterator → GenTraversableOnce
def toList: List[T]
Преобразует эту последовательность или итератор в список.
Примечание: не завершится для коллекций бесконечного размера.
- 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]
- Неявный
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в CollectionsHaveToParArray[SeqSplitter[T], T] с помощью метода CollectionsHaveToParArray в scala.collection.parallel. Это преобразование выполнится только в том случае, если в области видимости будет неявное значение типа (SeqSplitter[T]) ⇒ GenTraversableOnce[T].
- Классы определений
- CollectionsHaveToParArray
def toSeq: Seq[T]
Преобразует эту итерабельную или итераторную структуру в последовательность. Как и в случае с toIterable, она ленива в этой реализации по умолчанию, поскольку эта TraversableOnce может быть ленивой и неоцененной.
Примечание: не завершит работу для коллекций бесконечной величины.
- возвращает
последовательность, содержащую все элементы этой итерабельной или итераторной структуры.
- Классы определений
- TraversableOnce → GenTraversableOnce
def toSet[B >: T]: immutable.Set[B]
Преобразует эту итерабельную или итераторную структуру в множество.
Примечание: не завершит работу для коллекций бесконечной величины.
- возвращает
множество, содержащее все элементы этой итерабельной или итераторной структуры.
- Классы определений
- TraversableOnce → GenTraversableOnce
def toStream: immutable.Stream[T]
Преобразует эту итерабельную или итераторную структуру в поток.
- возвращает
поток, содержащий все элементы этой итерабельной или итераторной структуры.
- Классы определений
- Iterator → GenTraversableOnce
def toString(): String
Преобразует этот итератор в строку.
- возвращает
"<iterator>"пуст ли итератор или нет.
def toTraversable: Traversable[T]
Преобразует эту итерабельную или итераторную структуру в неопределённый Traversable. Вернёт ту же коллекцию, если этот экземпляр уже Traversable.
Примечание: не завершит работу для бесконечных итераторов.
- возвращает
Traversable, содержащий все элементы этой итерабельной или итераторной структуры.
- Классы определений
- Iterator → TraversableOnce → GenTraversableOnce
def toVector: Vector[T]
Преобразует эту итерабельную или итераторную структуру в вектор.
Примечание: не завершит работу для коллекций бесконечной величины.
- возвращает
вектор, содержащий все элементы этой итерабельной или итераторной структуры.
- Классы определений
- TraversableOnce → GenTraversableOnce
def updated2combiner[U >: T, 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: (T) ⇒ Boolean): Iterator[T]
Создаёт итератор, содержащий все элементы текущего итератора, удовлетворяющие предикату p. Порядок элементов сохраняется.
Примечание: withFilter эквивалентно filter для итераторов. Оно существует для того, чтобы выражения for с фильтрами работали над итераторами.
- p
предикат для проверки значений.
- returns
итератор, возвращающий те значения текущего итератора, которые удовлетворяют предикату
p.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def zip[B](that: Iterator[B]): Iterator[(T, B)]
Создаёт итератор, объединяющий пары элементов из текущего итератора и другого итератора. Если один из итераторов длиннее другого, его оставшиеся элементы игнорируются.
- that
Итератор, предоставляющий вторую часть каждой пары результата
- returns
новый итератор, содержащий пары, состоящие из соответствующих элементов текущего итератора и
that. Количество элементов, возвращаемых новым итератором, равно минимуму из количества элементов, возвращаемых текущим итератором иthat.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, а также итератор, переданный в качестве параметра, и использовать только возвращённый итератор. Использование старых итераторов не определено, может быть изменено и может привести к изменениям в новом итераторе.
def zip2combiner[U >: T, S, That](otherpit: RemainsIterator[S], cb: Combiner[(U, S), That]): Combiner[(U, S), That]
- Definition Classes
- AugmentedIterableIterator
def zipAll[B](that: Iterator[B], thisElem: T, thatElem: B): Iterator[(T, B)]
Создаёт итератор, объединяющий пары элементов из текущего и другого итераторов. Если один из итераторов короче другого, для расширения более короткого итератора используются значения-заполнители до длины более длинного.
- that
итератор
thatможет иметь другую длину, чем текущий итератор.- thisElem
элемент
thisElemиспользуется для заполнения возвращаемого итератора, если текущий итератор короче, чемthat- thatElem
элемент
thatElemиспользуется для заполнения возвращаемого итератора, еслиthatкороче текущего итератора- returns
новый итератор, содержащий пары, составленные из соответствующих элементов текущего итератора и
that. Длина возвращаемого итератора равна максимальной длине текущего итератора иthat. Если текущий итератор короче, чемthat,thisElemзначения используются для заполнения результата. Еслиthatкороче текущего итератора,thatElemзначения используются для заполнения результата.
- Definition Classes
- Iterator
def zipAll2combiner[U >: T, 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 >: T, 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[(T, Int)]
Создаёт итератор, который сопоставляет каждый элемент, производимый этим итератором, с его индексом, считая с 0.
- returns
новый итератор, содержащий пары, состоящие из соответствующих элементов этого итератора и их индексов.
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе тоже.
def →[B](y: B): (SeqSplitter[T], B)
- Неявный
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в ArrowAssoc[SeqSplitter[T]] выполняется методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
Члены-значения с неявными имплицитными значениями
def filter(p: (T) ⇒ Boolean): TraversableOnce[T]
- Неявный
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в MonadOps[T] выполняется методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенено одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, вы можете использовать ограничение типа:(seqSplitter: MonadOps[T]).filter(p)
- Definition Classes
- MonadOps
def flatMap[B](f: (T) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в MonadOps[T] выполняется методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенено одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, вы можете использовать ограничение типа:(seqSplitter: MonadOps[T]).flatMap(f)
- Definition Classes
- MonadOps
def map[B](f: (T) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в MonadOps[T] выполняется методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенено одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, вы можете использовать ограничение типа:(seqSplitter: MonadOps[T]).map(f)
- Definition Classes
- MonadOps
def withFilter(p: (T) ⇒ Boolean): Iterator[T]
- Неявный
- Этот член добавлен неявным преобразованием из SeqSplitter[T] в MonadOps[T] выполняется методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенено одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, вы можете использовать ограничение типа:(seqSplitter: MonadOps[T]).withFilter(p)
- Definition Classes
- 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.html
Параллельные итераторы последовательностей позволяют разбивать их на произвольные подмножества.
тип элементов, по которым выполняется итерация.