Spec-Zone.ru › Scala 3.1

Класс scala.collection.AbstractIterator

Исходный код

абстрактный класс AbstractIterator[+A] extends Iterator[A]

Явное создание экземпляра Iterator для уменьшения размера файла класса в подклассах.

Суперайтепы
трайт Iterator[A]
трайт IterableOnceOps[A, Iterator, Iterator[A]]
трайт IterableOnce[A]
класс Object
трайт Matchable
класс Any
Известные подтипы
класс GroupedIterator[B]
класс BufferedLineIterator
класс LineIterator
класс MatchIterator

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

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

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

Типичные применения достигаются методами grouped и sliding.

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

Наследованные методы

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

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

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

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

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

Возвращает

буферизованный итератор, генерирующий те же значения, что и этот итератор.

См. также

scala.collection.BufferedIterator

Примечание

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

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

Исходный код
def collect[B](pf: PartialFunction[A, B]): Iterator[B]

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

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

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

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

Исходный код
def contains(elem: Any): Boolean

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

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

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

тестируемый элемент.

Возвращает

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

Примечание

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

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

Исходный код
def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Int

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

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

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

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

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

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

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

start

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

xs

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

Возвращает

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

Примечание

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

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

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

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

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

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

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

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

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

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

xs

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

Возвращает

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

Примечание

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

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

Исходный код@deprecatedOverriding("Это всегда должно перенаправлять на версию этого метода с 3 аргументами", начиная с = "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

Источник
def filterNot(p: A => Boolean): Iterator[A]

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

Источник
def find(p: A => Boolean): Option[A]

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

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

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

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

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

Возвращает

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

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

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

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

Источник
def flatten[B](implicit ev: A => IterableOnce[B]): Iterator[B]

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

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

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

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

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

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

параметр типа для бинарного оператора, надтипа A.

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

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

z

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

Возвращает

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

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

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

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

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

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

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

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

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

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

z

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

Возвращает

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

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

Источник
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 если эта коллекция пуста.

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

Источник
def forall(p: A => Boolean): Boolean

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

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

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

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

Возвращает

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

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

Источник
def foreach[U](f: A => U): Unit

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

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

Источник
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
Примечание

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

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

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

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

Возвращает

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

Примечание

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

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

Источник
def indexOf[B >: A](elem: B, from: Int): Int

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

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

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

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

from

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

Возвращает

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

Примечание

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

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

Источник
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 для Iterable и false для Iterator, если не переопределено.

Возвращает

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

Источник
def maxBy[B](f: A => B)(implicit cmp: Ordering[B]): A

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

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

Параметры типа
B
Тип результата функции f.
Параметры значения
cmp
Упорядочение, используемое для сравнения элементов.
f
Функция измерения.
Возвращает

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

Исключение
UnsupportedOperationException
если эта коллекция пуста.
Унаследовано отIterableOnceOps

Источник
def maxByOption[B](f: A => B)(implicit cmp: Ordering[B]): Option[A]

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

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

Параметры типа
B
Тип результата функции f.
Параметры значения
cmp
Упорядочение, используемое для сравнения элементов.
f
Функция измерения.
Возвращает

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

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

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

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

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

Параметры типа
B
Тип, по которому определено упорядочение.
Параметры значения
ord
Упорядочение, используемое для сравнения элементов.
Возвращает

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

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

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

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

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

Параметры типа
B
Тип, по которому определено упорядочение.
Параметры значения
ord
Упорядочение, используемое для сравнения элементов.
Возвращает

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

Исключение
UnsupportedOperationException
если эта коллекция пуста.
Унаследовано отIterableOnceOps

Источник
def minBy[B](f: A => B)(implicit cmp: Ordering[B]): A

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

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

Параметры типа
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

Источник@throws(scala.throws.$lessinit$greater$default$1[scala.NoSuchElementException])
def next(): A

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

Возвращает

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

Исключения
NoSuchElementException

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

Примечание

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

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

Источник
def nextOption(): Option[A]

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

Возвращает

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

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

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

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

Возвращает

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

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

Источник
def padTo[B >: A](len: Int, elem: B): Iterator[B]

Копия этого итератора с добавленными значениями элемента до достижения заданной целевой длины.

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

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

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

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

len

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

Возвращает

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

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

Источник
def partition(p: A => Boolean): (Iterator[A], Iterator[A])

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

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

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

Возвращает

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

Примечание

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

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

Источник
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

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

Возвращает

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

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

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

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

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

class="attributes">
Тип параметров
B

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

Значения параметров
op

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

Возвращает

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

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

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

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

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

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

class="attributes">
Тип параметров
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]

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

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

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

class="attributes">
Тип параметров
B

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

Значения параметров
op

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

Возвращает

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

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

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

class="attributes">
Унаследовано от IterableOnceOps

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

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

class="attributes">
Тип параметров
B

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

Значения параметров
that

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

Возвращает

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

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

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

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

Источник
def размер: Int

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

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

Возвращает

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

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

Источник
def slice(from: Int, until: Int): Iterator[A]

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

Источник
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

Источник
def span(p: A => Boolean): (Iterator[A], Iterator[A])

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

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

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

Примечание

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

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

Источник
def splitAt(n: Int): (Iterator[A], Iterator[A])

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

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

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

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

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

Возвращает

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

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

Источник
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. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, конвертеры в scala.jdk.StreamConverters позволяют создавать параллельные потоки, в то время как обычные Stepper можно преобразовать только в последовательные потоки.

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

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

Суммирует элементы этого набора.

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

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

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

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

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

Возвращает

сумма всех элементов этого набора относительно + оператора в num.

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

Источник
def take(n: Int): Iterator[A]

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

Источник
def takeWhile(p: A => Boolean): Iterator[A]

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

Источник
override def tapEach[U](f: A => U): Iterator[A]

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

Источник
def to[C1](factory: Factory[A, C1]): C1

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

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

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

Источник
def toArray[B >: A : ClassTag]: Array[B]

Преобразовать набор в массив.

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

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

Источник@inline
final def toBuffer[B >: A]: Buffer[B]

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

Источник
def toIndexedSeq: IndexedSeq[A]

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

Источник
def toList: List[A]

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

Источник
def toMap[K, V](implicit ev: A <:< (K, V)): Map[K, V]

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

Источник
def toSeq: Seq[A]

Возвращает

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

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

Источник
def toSet[B >: A]: Set[B]

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

Источник
override def toString: String

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

Возвращает

"<iterator>"

Примечание

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

Классы определения Iterator -> Any
Унаследовано от Iterator

Источник
def toVector: Vector[A]

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

Источник
def withFilter(p: A => Boolean): Iterator[A]

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

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

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

предикат для проверки значений.

Возвращает

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

Примечание

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

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

Источник
def zip[B](that: IterableOnce[B]): Iterator[(A, B)]

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

Источник
def zipAll[A1 >: A, B](that: IterableOnce[B], thisElem: A1, thatElem: B): Iterator[(A1, B)]

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

Источник
def zipWithIndex: Iterator[(A, Int)]

Унаследовано от 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/AbstractIterator.html

Spec-Zone.ru

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