Spec-Zone.ru › Scala 3.1

Трейт scala.collection.BufferedIterator

Исходный код

трейт BufferedIterator[+A] extends Iterator[A]

Буферизованные итераторы — это итераторы, предоставляющие метод head, который проверяет следующий элемент, не удаляя его.

Суперайте
трейт Iterator[A]
трейт IterableOnceOps[A, Iterator, Iterator[A]]
трейт IterableOnce[A]
класс Object
трейт Matchable
класс Any

Наследуемые классы

Исходный код
класс GroupedIterator[B >: A](self: Iterator[B], size: Int, step: Int) extends AbstractIterator[Seq[B]]

Гибкий итератор для преобразования Iterator[A] в Iterator[Seq[A]] с настраиваемым размером последовательности, шагом и стратегией обработки элементов, которые не помещаются равномерно.

Типичные операции могут быть реализованы с помощью методов grouped и sliding.

Наследуется от Iterator

Абстрактные методы

Исходный код
def head: A

Возвращает следующий элемент итератора, не продвигая его за пределы текущей позиции.

Конкретные методы

Исходный код
override def buffered: BufferedIterator[A]

Классы-предки Iterator

Исходный код
def headOption: Option[A]

Возвращает опцию следующего элемента итератора, не продвигая его за пределы текущей позиции.

Возвращает

следующий элемент этого итератора, если у него есть следующий элемент None в противном случае

Наследуемые методы

Исходный код@inline
final def ++[B >: A](xs: => IterableOnce[B]): Iterator[B]

Наследуется от Iterator

Исходный код@inline
final 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

буфер строки, в который добавляются элементы.

Возвращает

буфер строки b , в который были добавлены элементы.

Наследуется от IterableOnceOps

Source@inline
final 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

разделительная строка.

Возвращает

строковый буфер b, в который были добавлены элементы.

Унаследовано от IterableOnceOps

Source
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

строковый буфер, в который добавляются элементы.

end

конечная строка.

sep

разделительная строка.

start

начальная строка.

Возвращает

строковый буфер b, в который были добавлены элементы.

Унаследовано от IterableOnceOps

Source
def collect[B](pf: PartialFunction[A, B]): Iterator[B]

Унаследовано от Iterator

Source
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]

Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.

Примечание: может не завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

Параметры значения
pf

частичная функция

Возвращает

значение типа Option, содержащее результат применения pf к первому значению, для которого она определена, или None если такового нет.

Пример

Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)

Унаследовано от IterableOnceOps

Source
def concat[B >: A](xs: => IterableOnce[B]): Iterator[B]

Унаследовано от Iterator

Source
def contains(elem: Any): Boolean

Проверяет, содержит ли этот итератор заданное значение в качестве элемента.

Примечание: может не завершаться для бесконечных итераторов.

Параметры значения
elem

элемент для проверки.

Возвращает

true если этот итератор создаёт некоторое значение, равное (как определяется ==) elem, false в противном случае.

Примечание

Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться.

Унаследовано от Iterator

Source
def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Int

Копирует элементы в массив, возвращая количество скопированных элементов.

Заполняет заданный массив xs начиная с индекса start не более чем len элементами этой коллекции.

Копирование завершится, когда будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов.

Параметры типа
B

тип элементов массива.

Параметры значения
len

максимальное количество элементов для копирования.

start

начальный индекс xs.

xs

массив для заполнения.

Возвращает

количество элементов, записанных в массив

Примечание

Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван. Использование итератора после этого не определено и может измениться.

Унаследовано от IterableOnceOps

Исходный код@deprecatedOverriding("Это должно всегда передавать 3-аргументной версии этого метода", since = "2.13.4")
def copyToArray[B >: A](xs: Array[B], start: Int): Int

Копирует элементы в массив, возвращая количество скопированных элементов.

Заполняет заданный массив xs начиная с индекса start значениями этого набора.

Копирование завершается, когда скопированы все элементы этого набора или достигнут конец массива.

Параметры типа
B

тип элементов массива.

Параметры значения
start

начальный индекс xs.

xs

массив для заполнения.

Возвращает

количество элементов, записанных в массив

Примечание

Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван. Использование итератора после этого не определено и может измениться.

Унаследовано от IterableOnceOps

Исходный код@deprecatedOverriding("Это должно всегда передавать 3-аргументной версии этого метода", since = "2.13.4")
def copyToArray[B >: A](xs: Array[B]): Int

Копирует элементы в массив, возвращая количество скопированных элементов.

Заполняет заданный массив xs начиная с индекса start значениями этого набора.

Копирование завершается, когда скопированы все элементы этого набора или достигнут конец массива.

Параметры типа
B

тип элементов массива.

Параметры значения
xs

массив для заполнения.

Возвращает

количество элементов, записанных в массив

Примечание

Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван. Использование итератора после этого не определено и может измениться.

Унаследовано от IterableOnceOps

Исходный код
def corresponds[B](that: IterableOnce[B])(p: (A, B) => Boolean): Boolean

Проверяет, удовлетворяет ли каждый элемент итератора этого набора условию, заданному предикатом, по отношению к соответствующему элементу другого набора.

Примечание: не завершит работу для наборов бесконечного размера.

Параметры типа
B

тип элементов that

Параметры значения
p

предикат, связывающий элементы обоих наборов

that

другой набор

Возвращает

true , если оба набора имеют одинаковую длину и p(x, y) имеет значение true для всех соответствующих элементов x этого итератора и y that, в противном случае false

Унаследовано от IterableOnceOps

Исходный код
def count(p: A => Boolean): Int

Подсчитывает количество элементов в наборе, удовлетворяющих предикату.

Примечание: не завершит работу для наборов бесконечного размера.

Параметры значения
p

предикат для проверки элементов.

Возвращает

количество элементов, удовлетворяющих предикату p.

Унаследовано от IterableOnceOps

Исходный код
def distinct: Iterator[A]

Создает новый итератор из этого итератора без дублируемых элементов.

Возвращает

итератор с уникальными элементами

Примечание

Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван. Использование итератора после этого не определено и может измениться.

Унаследовано от Iterator

Исходный код
def distinctBy[B](f: A => B): Iterator[A]

Создает новый итератор из этого итератора без дублируемых элементов, определяемых по результату == после применения преобразования f.

Параметры типа
B

тип элементов после преобразования по f

Параметры значения
f

Функция преобразования, результат которой используется для определения уникальности каждого элемента

Возвращает

итератор с уникальными элементами

Примечание

Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван. Использование итератора после этого не определено и может измениться.

Унаследовано от Iterator

Исходный код
def drop(n: Int): Iterator[A]

Унаследовано от Iterator

Исходный код
def dropWhile(p: A => Boolean): Iterator[A]

Унаследовано от Iterator

Исходный код
def duplicate: (Iterator[A], Iterator[A])

Создает два новых итератора, которые оба итерируются по тем же элементам, что и этот итератор (в том же порядке). Дублированные итераторы считаются равными, если они находятся на одном и том же элементе.

Поскольку большинство методов итераторов делают исходный итератор непригодным для дальнейшего использования, этот метод предоставляет надежный способ вызова нескольких таких методов на итераторе.

Возвращает

пара итераторов

Примечание

Реализация может выделять временное хранилище для элементов, переданных одним итератором, но ещё не переданных другим.

Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах.

Унаследовано от Iterator

Исходный код
def exists(p: A => Boolean): Boolean

Проверяет, выполняется ли предикат хотя бы для одного элемента этого набора.

Примечание: может не завершаться для наборов бесконечного размера.

Параметры значения
p

предикат для проверки элементов.

Возвращает

true , если данный предикат p удовлетворяется хотя бы одним элементом этого набора, в противном случае false

Унаследовано от IterableOnceOps

Исходный код
def filter(p: A => Boolean): Iterator[A]

Унаследовано от Iterator

Source
def filterNot(p: A => Boolean): Iterator[A]

Inherited from Iterator

Source
def find(p: A => Boolean): Option[A]

Находит первый элемент в коллекции, удовлетворяющий предикату, если таковой имеется.

Примечание: может не завершиться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.

Параметры значения
p

предикат, используемый для проверки элементов.

Возвращает

значение типа Option, содержащее первый элемент в коллекции, удовлетворяющий p, или None если таковой не существует.

Inherited from IterableOnceOps

Source
def flatMap[B](f: A => IterableOnce[B]): Iterator[B]

Inherited from Iterator

Source
def flatten[B](implicit ev: A => IterableOnce[B]): Iterator[B]

Inherited from Iterator

Source
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1

Производит свёртку элементов этой коллекции с использованием заданного ассоциативного бинарного оператора. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.

Порядок выполнения операций над элементами не определён и может быть не детерминированным.

Примечание: не завершится для коллекций бесконечного размера.

Параметры типа
A1

параметр типа для бинарного оператора, являющийся супертипом A.

Параметры значения
op

бинарный оператор, который должен быть ассоциативным.

z

нейтральный элемент для операции свёртки; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например, Nil для конкатенации списков, 0 для сложения или 1 для умножения).

Возвращает

результат применения оператора свёртки op между всеми элементами и z, или z если эта коллекция пуста.

Inherited from IterableOnceOps

Source
def foldLeft[B](z: B)(op: (B, A) => B): B

Применяет бинарный оператор к начальному значению и всем элементам этой коллекции слева направо.

Примечание: не завершится для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор является ассоциативным и коммутативным.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

z

начальное значение.

Возвращает

результат вставки op между последовательными элементами этой коллекции слева направо с начальным значением z слева: op(...op(z, x1), x2, ..., xn) где x1, ..., xn - элементы этой коллекции. Возвращает z если эта коллекция пуста.

Inherited from IterableOnceOps

Source
def foldRight[B](z: B)(op: (A, B) => B): B

Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению, двигаясь справа налево.

Примечание: не завершится для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор является ассоциативным и коммутативным.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

z

начальное значение.

Возвращает

результат вставки op между последовательными элементами этой коллекции справа налево с начальным значением z справа: op(x1, op(x2, ... op(xn, z)...)) где x1, ..., xn - элементы этой коллекции. Возвращает z если эта коллекция пуста.

Inherited from IterableOnceOps

Source
def forall(p: A => Boolean): Boolean

Проверяет, выполняется ли предикат для всех элементов этой коллекции.

Примечание: может не завершиться для коллекций бесконечного размера.

Параметры значения
p

предикат, используемый для проверки элементов.

Возвращает

true если эта коллекция пуста или заданный предикат p выполняется для всех элементов этой коллекции, в противном случае false.

Inherited from IterableOnceOps

Source
def foreach[U](f: A => U): Unit

Применить f к каждому элементу для побочных эффектов. Примечание: параметр [U] необходим для помощи в инференции типов scalac.

Inherited from IterableOnceOps

Source
def grouped[B >: A](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
Примечание

Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора неопределено, может быть изменено и может привести к изменениям в новом итераторе также.

Inherited from Iterator

Source
def hasNext: Boolean

Проверить, доступен ли следующий элемент.

Возвращает

true если следующий элемент доступен, false в противном случае

Примечание

Переиспользование: Итератор остаётся валидным для дальнейшего использования независимо от возвращаемого результата.

Inherited from Iterator

Source
def indexOf[B >: A](elem: B, from: Int): Int

Возвращает индекс первого вхождения указанного объекта в этом итерируемом объекте после или на некотором начальном индексе.

Примечание: может не завершиться для бесконечных итераторов.

Параметры значения
elem

элемент, для которого выполняется поиск.

from

начальный индекс

Возвращает

индекс >= from первого вхождения elem в значения, производимые этим итератором, или -1, если такой элемент не существует до тех пор, пока не будет достигнут конец итератора.

Примечание

Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование неопределённо и может быть изменено.

Inherited from Iterator

Source
def indexOf[B >: A](elem: B): Int

Возвращает индекс первого вхождения указанного объекта в этом итерируемом объекте.

Примечание: может не завершиться для бесконечных итераторов.

Параметры значения
elem

элемент для поиска.

Возвращает

индекс первого вхождения elem в значениях, производимых этим итератором, или -1, если такой элемент не существует до тех пор, пока не будет достигнут конец итератора.

Примечание

Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может быть изменено.

Унаследовано от Итератор

Источник
def indexWhere(p: A => Boolean, from: Int): Int

Унаследовано от Итератор

Источник@deprecatedOverriding("isEmpty is defined as !hasNext; override hasNext instead", "2.13.0")
override def isEmpty: Boolean

Классы определений Итератор -> IterableOnceOps
Унаследовано от Итератор

Источник
def isTraversableAgain: Boolean

Проверяет, можно ли повторно пройти по этому набору. Всегда истинно для наборов и ложно для итераторов, если не переопределено.

Возвращает

true если повторное прохождение возможно, false в противном случае.

Унаследовано от IterableOnceOps

Источник@inline
final def iterator: Iterator[A]

Унаследовано от Итератор

Источник
def knownSize: Int

Возвращает

Количество элементов в этом наборе, если его можно вычислить быстро, в противном случае -1. Быстро обычно означает: не требует обхода набора.

Унаследовано от IterableOnce

Источник@inline
final def length: Int

Унаследовано от Итератор

Источник
def map[B](f: A => B): Iterator[B]

Унаследовано от Итератор

Источник
def max[B >: A](implicit ord: Ordering[B]): A

Находит наибольший элемент.

Примечание: не завершится для наборов бесконечного размера.

Параметры типа
B

Тип, по которому определено упорядочение.

Параметры значения
ord

Упорядочение, используемое для сравнения элементов.

Возвращает

наибольший элемент этого набора относительно упорядочения ord.

Исключения
UnsupportedOperationException

если этот набор пуст.

Унаследовано от IterableOnceOps

Source
def maxBy[B](f: A => B)(implicit cmp: Ordering[B]): A

Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.

Примечание: не будет завершаться для коллекций бесконечного размера.

class="attributes">
Параметры типа
B

Тип результата функции f.

Параметры значения
cmp

Порядок, используемый для сравнения элементов.

f

Функция измерения.

Возвращает

первый элемент этой коллекции с наибольшим значением, измеренным функцией f, относительно порядка cmp.

Исключения
UnsupportedOperationException

если эта коллекция пуста.

Унаследовано от IterableOnceOps

Source
def maxByOption[B](f: A => B)(implicit cmp: Ordering[B]): Option[A]

Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.

Примечание: не будет завершаться для коллекций бесконечного размера.

class="attributes">
Параметры типа
B

Тип результата функции f.

Параметры значения
cmp

Порядок, используемый для сравнения элементов.

f

Функция измерения.

Возвращает

значение опционального типа, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f, относительно порядка cmp.

Унаследовано от IterableOnceOps

Source
def maxOption[B >: A](implicit ord: Ordering[B]): Option[A]

Находит наибольший элемент.

Примечание: не будет завершаться для коллекций бесконечного размера.

class="attributes">
Параметры типа
B

Тип, по которому определён порядок.

Параметры значения
ord

Порядок, используемый для сравнения элементов.

Возвращает

значение опционального типа, содержащее наибольший элемент этой коллекции относительно порядка ord.

Унаследовано от IterableOnceOps

Source
def min[B >: A](implicit ord: Ordering[B]): A

Находит наименьший элемент.

Примечание: не будет завершаться для коллекций бесконечного размера.

class="attributes">
Параметры типа
B

Тип, по которому определён порядок.

Параметры значения
ord

Порядок, используемый для сравнения элементов.

Возвращает

наименьший элемент этой коллекции относительно порядка ord.

Исключения
UnsupportedOperationException

если эта коллекция пуста.

Унаследовано от IterableOnceOps

Source
def minBy[B](f: A => B)(implicit cmp: Ordering[B]): A

Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.

Примечание: не будет завершаться для коллекций бесконечного размера.

class="attributes">
Параметры типа
B

Тип результата функции f.

Параметры значения
cmp

Порядок, используемый для сравнения элементов.

f

Функция измерения.

Возвращает

первый элемент этой коллекции с наименьшим значением, измеренным функцией f, относительно порядка cmp.

Исключения
UnsupportedOperationException

если эта коллекция пуста.

Унаследовано от IterableOnceOps

Source
def minByOption[B](f: A => B)(implicit cmp: Ordering[B]): Option[A]

Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.

Примечание: не будет завершаться для коллекций бесконечного размера.

Параметры типа
B

Тип результата функции f.

Параметры значения
cmp

Порядок, используемый для сравнения элементов.

f

Функция измерения.

Возвращает

значение типа option, содержащее первый элемент этой коллекции с наименьшим значением, измеренным функцией f относительно порядка cmp.

Унаследовано от IterableOnceOps

Source
def minOption[B >: A](implicit ord: Ordering[B]): Option[A]

Находит наименьший элемент.

Примечание: не будет завершаться для коллекций бесконечного размера.

Параметры типа
B

Тип, по которому определяется порядок.

Параметры значения
ord

Порядок, используемый для сравнения элементов.

Возвращает

значение типа option, содержащее наименьший элемент этой коллекции относительно порядка ord.

Унаследовано от IterableOnceOps

Source@inline
final def mkString: String

Отображает все элементы этой коллекции в строке.

Делегирует addString, который может быть переопределен.

Возвращает

строковое представление этой коллекции. В результирующей строке строковые представления (согласно методу toString) всех элементов этой коллекции следуют друг за другом без разделительной строки.

Унаследовано от IterableOnceOps

Source@inline
final def mkString(sep: String): String

Отображает все элементы этой коллекции в строке с помощью разделительной строки.

Делегирует addString, который может быть переопределен.

Параметры значения
sep

разделительная строка.

Возвращает

строковое представление этой коллекции. В результирующей строке строковые представления (согласно методу toString) всех элементов этой коллекции разделены строкой sep.

Пример

List(1, 2, 3).mkString("|") = "1|2|3"

Унаследовано от IterableOnceOps

Source
final def mkString(start: String, sep: String, end: String): String

Отображает все элементы этой коллекции в строке с использованием начальной, конечной и разделительных строк.

Делегирует addString, который может быть переопределен.

Параметры значения
end

конечная строка.

sep

разделительная строка.

start

начальная строка.

Возвращает

строковое представление этой коллекции. Результирующая строка начинается со строки start и заканчивается строкой end. Внутри строковые представления (согласно методу toString) всех элементов этой коллекции разделены строкой sep.

Пример

List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"

Унаследовано от IterableOnceOps

Source@throws(scala.throws.$lessinit$greater$default$1[scala.NoSuchElementException])
def next(): A

Возвращает следующий элемент и перемещает итератор вперёд.

Возвращает

следующий элемент.

Исключения
NoSuchElementException

если следующего элемента нет.

Примечание

Переиспользование: Перемещает итератор вперёд, что может исчерпать элементы. Допустимо делать дополнительные вызовы итератору.

Унаследовано от Iterator

Source
def nextOption(): Option[A]

Оборачивает значение next() в option.

Возвращает

Some(next) если следующий элемент существует, None в противном случае.

Унаследовано от Iterator

Source@deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
def nonEmpty: Boolean

Проверяет, не является ли коллекция пустой.

Возвращает

true если коллекция содержит по крайней мере один элемент, false в противном случае.

Унаследовано от IterableOnceOps

Source
def padTo[B >: A](len: Int, elem: B): Iterator[B]

Копия этого итератора с добавленными значениями элемента до тех пор, пока не будет достигнута заданная целевая длина.

Параметры типа
B

тип элемента возвращаемого итератора.

Параметры значения
elem

значение заполнения

len

целевая длина

Возвращает

новый итератор, состоящий из всех элементов этого итератора, за которым следуют минимальное количество вхождений elem, так что полученная коллекция имеет длину не менее len.

Унаследовано от Iterator

Source
def partition(p: A => Boolean): (Iterator[A], Iterator[A])

Разделяет этот итератор на два итератора в соответствии с предикатом.

Параметры значения
p

предикат для разделения

Возвращает

пара итераторов: итератор, который удовлетворяет предикату p, и итератор, который не удовлетворяет. Относительный порядок элементов в результирующих итераторах такой же, как и в исходном итераторе.

Примечание

Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новых итераторах также.

Унаследовано от Iterator

Source
def patch[B >: A](from: Int, patchElems: Iterator[B], replaced: Int): Iterator[B]

Возвращает этот итератор с изменёнными значениями.

Изменение по отрицательным индексам такое же, как изменение, начинающееся с 0. Изменение по индексам, равным или большим длины исходного итератора, добавляет патч в конец. Если количество заменённых значений больше, чем фактически существует, избыток игнорируется.

Параметры значения
from

Начальный индекс, с которого нужно выполнить замену.

patchElems

Итератор значений для замены.

replaced

Количество значений в исходном итераторе, которые заменяются патчем.

Примечание

Переиспользование: после вызова этого метода следует удалить итератор, на котором был вызван метод, а также переданный в качестве параметра итератор, и использовать только возвращённый итератор. Использование старых итераторов не определено, может измениться и может привести к изменениям в новом итераторе.

Унаследовано от Iterator

Источник
def product[B >: A](implicit num: Numeric[B]): B

Перемножает элементы этого набора.

Примечание: не будет завершаться для бесконечных наборов.

Параметры типа
B

тип результата оператора *.

Параметры значения
num

неявный параметр, определяющий набор числовых операций, включающий оператор *, который будет использоваться для вычисления произведения.

Возвращает

произведение всех элементов этого набора относительно оператора * в num.

Унаследовано от IterableOnceOps

Источник
def reduce[B >: A](op: (B, B) => B): B

Сводит элементы этого набора с использованием указанного ассоциативного бинарного оператора.

Порядок выполнения операций над элементами не определён и может быть не детерминированным.

Параметры типа
B

Параметр типа для бинарного оператора, являющийся супертипом A.

Параметры значения
op

Бинарный оператор, который должен быть ассоциативным.

Возвращает

Результат применения оператора reduce op между всеми элементами, если набор не пуст.

Исключения
UnsupportedOperationException

если этот набор пуст.

Унаследовано от IterableOnceOps

Источник
def reduceLeft[B >: A](op: (B, A) => B): B

Применяет бинарный оператор ко всем элементам этого набора слева направо.

Примечание: не будет завершаться для бесконечных наборов.

Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не является ассоциативным и коммутативным.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

Возвращает

результат вставки op между последовательными элементами этого набора слева направо: op( op( ... op(x1, x2) ..., xn-1), xn), где x1, ..., xn — элементы этого набора.

Исключения
UnsupportedOperationException

если этот набор пуст.

Унаследовано от IterableOnceOps

Источник
def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]

Необязательно применяет бинарный оператор ко всем элементам этого набора слева направо.

Примечание: не будет завершаться для бесконечных наборов.

Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не является ассоциативным и коммутативным.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

Возвращает

значение опции, содержащее результат reduceLeft(op), если этот набор не пуст, None в противном случае.

Унаследовано от IterableOnceOps

Источник
def reduceOption[B >: A](op: (B, B) => B): Option[B]

Уменьшает элементы этой коллекции, если таковые имеются, с использованием указанного ассоциативного бинарного оператора.

Порядок выполнения операций над элементами не определён и может быть недетерминированным.

Параметры типа
B

Параметр типа для бинарного оператора, являющийся супертипом A.

Параметры значения
op

Бинарный оператор, который должен быть ассоциативным.

Возвращает

Значение типа Option, содержащее результат применения оператора reduce к op между всеми элементами, если коллекция не пуста, и None в противном случае.

Наследуется от IterableOnceOps

Источник
def reduceRight[B >: A](op: (A, B) => B): B

Применяет бинарный оператор ко всем элементам этой коллекции, двигаясь справа налево.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип основной коллекции не упорядочен или оператор не является ассоциативным и коммутативным.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

Возвращает

результат вставки op между последовательными элементами этой коллекции, двигаясь справа налево: op(x1, op(x2, ..., op(xn-1, xn)...)), где x1, ..., xn — элементы этой коллекции.

Исключения
UnsupportedOperationException

если эта коллекция пуста.

Наследуется от IterableOnceOps

Источник
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]

Необязательно применяет бинарный оператор ко всем элементам этой коллекции, двигаясь справа налево.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип основной коллекции не упорядочен или оператор не является ассоциативным и коммутативным.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

Возвращает

значение типа Option, содержащее результат reduceRight(op), если эта коллекция не пуста, None в противном случае.

Наследуется от IterableOnceOps

Источник
protected def reversed: Iterable[A]

Наследуется от IterableOnceOps

Источник
def sameElements[B >: A](that: IterableOnce[B]): Boolean

Проверяет, равны ли соответствующие элементы данной коллекции Iterable (с учётом ==) элементам этого итератора.

Параметры типа
B

тип элементов коллекции that.

Параметры значения
that

коллекция для сравнения

Возвращает

true если обе коллекции содержат одинаковые элементы в том же порядке, false в противном случае. <ошибка в аннотации inheritdoc>

Наследуется от Iterator

Источник
def scanLeft[B](z: B)(op: (B, A) => B): Iterator[B]

Наследуется от Iterator

Source
def size: Int

Размер этого набора.

Примечание: не завершится для коллекций бесконечного размера.

Возвращает

количество элементов в этом наборе.

Унаследовано от IterableOnceOps

Source
def slice(from: Int, until: Int): Iterator[A]

Унаследовано от Iterator

Source
def sliding[B >: A](size: Int, step: Int): GroupedIterator[B]

Возвращает итератор, представляющий собой "скользящее окно" представления этого итератора. Первый аргумент - размер окна, а второй аргумент step - это то, насколько далеко сдвигать окно на каждой итерации. step по умолчанию 1.

Возвращаемый GroupedIterator может быть настроен на заполнение частичного результата до размера size или подавление частичного результата полностью.

Примеры использования:

// Returns List(ArraySeq(1, 2, 3), ArraySeq(2, 3, 4), ArraySeq(3, 4, 5))
(1 to 5).iterator.sliding(3).toList
// Returns List(ArraySeq(1, 2, 3, 4), ArraySeq(4, 5))
(1 to 5).iterator.sliding(4, 3).toList
// Returns List(ArraySeq(1, 2, 3, 4))
(1 to 5).iterator.sliding(4, 3).withPartial(false).toList
// Returns List(ArraySeq(1, 2, 3, 4), ArraySeq(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
Параметры значения
size

количество элементов в группе

step

расстояние между первыми элементами последовательных групп

Возвращает

Итератор, производящий Seq[B]ы размера size, за исключением последнего элемента (который может быть единственным элементом), который будет усечён, если осталось меньше size элементов для группирования. Это поведение можно настроить.

Примечание

Переиспользование: После вызова этого метода необходимо отбросить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе.

Унаследовано от Iterator

Source
def span(p: A => Boolean): (Iterator[A], Iterator[A])

Разделяет этот итератор на пару префикс/суффикс в соответствии с предикатом.

Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.

Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.

Примечание

Переиспользование: После вызова этого метода необходимо отбросить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах.

Унаследовано от Iterator

Source
def splitAt(n: Int): (Iterator[A], Iterator[A])

Разделяет эту коллекцию на пару префикс/суффикс в заданной позиции.

Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен.

Параметры значения
n

позиция, в которой нужно разделить.

Возвращает

пара коллекций, состоящая из первых n элементов этой коллекции и других элементов.

Унаследовано от IterableOnceOps

Source
def stepper[S <: Stepper[_]](implicit shape: StepperShape[A, S]): S

Возвращает scala.collection.Stepper для элементов этой коллекции.

Итератор Stepper позволяет создавать Java-поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться как итератор, который не упаковывает элементы.

Неявный параметр scala.collection.StepperShape определяет тип возвращаемого Stepper в соответствии с типом элемента этой коллекции.

  • Для коллекций Int, Short, Byte или Char, возвращается scala.collection.IntStepper

  • Для коллекций Double или Float, возвращается scala.collection.DoubleStepper

  • Для коллекций Long возвращается scala.collection.LongStepper

  • Для любого другого типа элемента возвращается scala.collection.AnyStepper

Обратите внимание, что этот метод переопределён в подклассах и возвращаемый тип уточняется до S with EfficientSplit, например, scala.collection.IndexedSeqOps.stepper. Для Steppers, помеченных scala.collection.Stepper.EfficientSplit, конверторы в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Steppers могут быть преобразованы только в последовательные потоки.

Унаследовано от IterableOnce

Source
def sum[B >: A](implicit num: Numeric[B]): B

Суммирует элементы этой коллекции.

Примечание: не завершится для коллекций бесконечного размера.

Параметры типа
B

тип результата операции +.

Параметры значения
num

неявный параметр, определяющий набор числовых операций, включающий оператор + для использования при формировании суммы.

Возвращает

сумма всех элементов этой коллекции относительно операции + в num.

Унаследовано от IterableOnceOps

Source
def take(n: Int): Iterator[A]

Унаследовано от Iterator

Source
def takeWhile(p: A => Boolean): Iterator[A]

Унаследовано от Iterator

Source
override def tapEach[U](f: A => U): Iterator[A]

Определяющие классы Iterator -> IterableOnceOps
Унаследовано от Iterator

Source
def to[C1](factory: Factory[A, C1]): C1

При заданной фабрике коллекций factory, преобразовать эту коллекцию в соответствующую форму представления для текущего типа элемента A. Примеры использования:

xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]

Унаследовано от IterableOnceOps

Source
def toArray[B >: A : ClassTag]: Array[B]

Преобразовать коллекцию в массив.

Примечание реализации: НЕ вызывать Array.from из этого метода.

Унаследовано от IterableOnceOps

Source@inline
final def toBuffer[B >: A]: Buffer[B]

Унаследовано от IterableOnceOps

Source
def toIndexedSeq: IndexedSeq[A]

Inherited from IterableOnceOps

Source
def toList: List[A]

Inherited from IterableOnceOps

Source
def toMap[K, V](implicit ev: A <:< (K, V)): Map[K, V]

Inherited from IterableOnceOps

Source
def toSeq: Seq[A]

Возвращает

Это коллекция в виде Seq[A]. Это эквивалентно to(Seq), но может быть быстрее.

Inherited from IterableOnceOps

Source
def toSet[B >: A]: Set[B]

Inherited from IterableOnceOps

Source
override def toString: String

Преобразует этот итератор в строку.

Возвращает

"<iterator>"

Примечание

Повторное использование: итератор остаётся действительным для дальнейшего использования, независимо от возвращаемого результата.

Классы определений Iterator -> Any
Inherited from Iterator

Source
def toVector: Vector[A]

Inherited from IterableOnceOps

Source
def withFilter(p: A => Boolean): Iterator[A]

Создаёт итератор, содержащий только те элементы из этого итератора, которые удовлетворяют предикату p. Порядок элементов сохраняется.

Примечание: withFilter эквивалентно filter для итераторов. Оно существует для того, чтобы выражения for с фильтрами работали над итераторами.

Параметры значения
p

предикат, используемый для проверки значений.

Возвращает

итератор, производящий те значения из этого итератора, которые удовлетворяют предикату p.

Примечание

Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора является неопределённым, может измениться и может привести к изменениям в новом итераторе тоже.

Inherited from Iterator

Source
def zip[B](that: IterableOnce[B]): Iterator[(A, B)]

Inherited from Iterator

Source
def zipAll[A1 >: A, B](that: IterableOnce[B], thisElem: A1, thatElem: B): Iterator[(A1, B)]

Inherited from Iterator

Source
def zipWithIndex: Iterator[(A, Int)]

Inherited from Iterator

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/collection/BufferedIterator.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API