Класс scala.collection.AbstractIterator
abstract class AbstractIterator[+A] extends Iterator[A]
Конструкторы экземпляров
new AbstractIterator()
Типовые члены
class GroupedIterator[B >: A] extends AbstractIterator[immutable.Seq[B]]
Гибкий итератор для преобразования Iterator[A] в Iterator[Seq[A]], с настраиваемым размером последовательности, шагом и стратегией обработки элементов, которые не делятся равномерно.
Типичные применения можно получить с помощью методов grouped и sliding.
- Definition Classes
- Iterator
Абстрактные значения-члены
abstract def hasNext: Boolean
Проверяет, доступен ли следующий элемент.
- returns
trueесли следующий элемент есть,falseв противном случае
- Definition Classes
- Iterator
- Примечание
Переиспользование: итератор остается действительным для дальнейшего использования, независимо от возвращаемого результата.
abstract def next(): A
Возвращает следующий элемент и продвигает итератор.
- returns
следующий элемент.
- Definition Classes
- Iterator
- Аннотации
- @throws(scala.this.throws.<init>$default$1[NoSuchElementException])
- Исключения
NoSuchElementException, если следующего элемента нет.- Примечание
Переиспользование: Продвигает итератор, что может исчерпать элементы. Допустимо делать дополнительные вызовы итератору.
Члены-значения конкретного типа
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
trueесли !(this == that), в противном случае — false.
- Определяющие классы
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode, за исключением упакованных числовых типов и null. Для числовых значений возвращает значение хеш-кода, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## вернёт одно и то же значение хеш-кода для каждого из них. Для null возвращает хеш-код, где null.hashCode вызывает NullPointerException.
- возвращает
значение хеш-кода, согласованное с ==
- Определяющие классы
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из AbstractIterator[A] в any2stringadd[AbstractIterator[A]], выполненное методом any2stringadd в scala.Predef.
- Определяющие классы
- any2stringadd
final def ++[B >: A](xs: => IterableOnce[B]): Iterator[B]
def ->[B](y: B): (AbstractIterator[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из AbstractIterator[A] в ArrowAssoc[AbstractIterator[A]], выполненное методом ArrowAssoc в scala.Predef.
- Определяющие классы
- ArrowAssoc
- Аннотации
- @inline()
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Определяющие классы
- AnyRef → Any
final def addString(b: mutable.StringBuilder): mutable.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: mutable.StringBuilder, sep: String): mutable.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
- Аннотации
- @inline()
def addString(b: mutable.StringBuilder, start: String, sep: String, end: String): mutable.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
- IterableOnceOps
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[A]
Создает буферизованный итератор из этого итератора.
- returns
буферизованный итератор, производящий те же значения, что и этот итератор.
- Definition Classes
- Iterator
- Примечание
Переиспользование: после вызова этого метода следует удалить вызываемый итератор и использовать только возвращенный. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
- См. также
def clone(): AnyRef
Создает копию получаемого объекта.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия получаемого объекта.
def collect[B](pf: PartialFunction[A, B]): Iterator[B]
Создает новый итератор, применяя частичную функцию ко всем элементам этого итератора, для которых функция определена.
- B
тип элемента возвращаемого итератора.
- pf
частичная функция, которая фильтрует и отображает итератор.
- returns
новый итератор, полученный путем применения заданной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- Iterator → IterableOnceOps
- Примечание
Переиспользование: после вызова этого метода следует удалить вызываемый итератор и использовать только возвращенный. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- pf
частичная функция
- returns
значение типа Option, содержащее pf, примененный к первому значению, для которого он определен, или
Noneесли такового нет.
- Definition Classes
- IterableOnceOps
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def concat[B >: A](xs: => IterableOnce[B]): Iterator[B]
- Definition Classes
- Iterator
def contains(elem: Any): Boolean
Проверяет, содержит ли этот итератор заданное значение в качестве элемента.
Примечание: может не завершиться для бесконечных итераторов.
- elem
тестируемый элемент.
- returns
trueесли этот итератор генерирует какое-то значение, которое равно (как определяется==)elem,falseв противном случае.
- Definition Classes
- Iterator
- Note
Повторное использование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться.
def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Int
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start максимум len элементами этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов будут скопированы.
- B
тип элементов массива.
- xs
массив для заполнения.
- start
начальный индекс xs.
- len
максимальное количество копируемых элементов.
- returns
количество элементов, записанных в массив
- Definition Classes
- IterableOnceOps
- Note
Повторное использование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться. Примечание: не завершится для коллекций бесконечного размера.
def copyToArray[B >: A](xs: Array[B], start: Int): Int
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива.
- B
тип элементов массива.
- xs
массив для заполнения.
- start
начальный индекс xs.
- returns
количество элементов, записанных в массив. Примечание: не завершится для коллекций бесконечного размера.
- Definition Classes
- IterableOnceOps
def copyToArray[B >: A](xs: Array[B]): Int
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива.
- B
тип элементов массива.
- xs
массив для заполнения.
- returns
количество элементов, записанных в массив. Примечание: не завершится для коллекций бесконечного размера.
- Definition Classes
- IterableOnceOps
def corresponds[B](that: IterableOnce[B])(p: (A, B) => Boolean): Boolean
Проверяет, соответствуют ли все элементы итератора этой коллекции соответствующим элементам другой коллекции, удовлетворяя предикату теста.
- B
тип элементов
that- that
другая коллекция
- p
предикат теста, который сопоставляет элементы из обеих коллекций
- returns
trueесли обе коллекции имеют одинаковую длину иp(x, y)являетсяtrueдля всех соответствующих элементовxэтого итератора иythat, в противном случаеfalse
- Definition Classes
- IterableOnceOps
def count(p: (A) => Boolean): Int
Подсчитывает количество элементов в коллекции, удовлетворяющих предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- IterableOnceOps
def distinct: Iterator[A]
Создаёт новый итератор из этого, без каких-либо дублируемых элементов.
- returns
итератор с уникальными элементами
- Definition Classes
- Iterator
- Note
Повторное использование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться.
def distinctBy[B](f: (A) => B): Iterator[A]
Создаёт новый итератор из этого, не содержащий дублирующих элементов, как определено ==, после применения трансформирующей функции f.
- B
тип элементов после преобразования функцией
f- f
трансформирующая функция, результат которой используется для определения уникальности каждого элемента
- returns
итератор с уникальными элементами
- Definition Classes
- Iterator
- Note
Повторное использование: после вызова этого метода, следует удалить итератор, на котором был вызван метод. Использование старого итератора не определено и может быть изменено.
def drop(n: Int): Iterator[A]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
количество элементов, которые нужно удалить из этого итератора.
- returns
итератор, содержащий все элементы этого итератора, кроме первых
nэлементов, или же пустой итератор, если в этом итераторе меньше, чемnэлементов. Еслиnотрицательно, не удалять никаких элементов.
- Definition Classes
- Iterator → IterableOnceOps
- Note
Повторное использование: после вызова этого метода, следует удалить итератор, на котором был вызван метод, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def dropWhile(p: (A) => Boolean): Iterator[A]
Удаляет самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- p
предикат для проверки элементов.
- returns
наибольший суффикс этого итератора, первый элемент которого не удовлетворяет предикату
p.
- Definition Classes
- Iterator → IterableOnceOps
- Note
Повторное использование: после вызова этого метода, следует удалить итератор, на котором был вызван метод, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def duplicate: (Iterator[A], Iterator[A])
Создаёт два новых итератора, которые оба итерируют по тем же элементам, что и этот итератор (в том же порядке). Дублированные итераторы считаются равными, если они находятся на том же элементе.
Поскольку большинство методов для итераторов делают исходный итератор непригодным для дальнейшего использования, этот метод предоставляет надёжный способ вызова нескольких таких методов для итератора.
- returns
пара итераторов
- Definition Classes
- Iterator
- Note
-
Реализация может выделять временное хранилище для элементов, перечисленных одним итератором, но ещё не перечисленных другим.
,Повторное использование: после вызова этого метода, следует удалить итератор, на котором был вызван метод, и использовать только возвращённые итераторы. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новых итераторах.
def ensuring(cond: (AbstractIterator[A]) => Boolean, msg: => Any): AbstractIterator[A]
- Implicit
- Этот член добавляется неявным преобразованием из AbstractIterator[A] в Ensuring[AbstractIterator[A]] , выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (AbstractIterator[A]) => Boolean): AbstractIterator[A]
- Implicit
- Этот член добавляется неявным преобразованием из AbstractIterator[A] в Ensuring[AbstractIterator[A]] , выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: => Any): AbstractIterator[A]
- Implicit
- Этот член добавляется неявным преобразованием из AbstractIterator[A] в Ensuring[AbstractIterator[A]] , выполненным методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): AbstractIterator[A]
- Неявный
- Этот член добавлен неявным преобразованием из AbstractIterator[A] в Ensuring[AbstractIterator[A]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на непустых экземплярах AnyRef, и обладает тремя дополнительными свойствами:
-
Он согласован: для любых непустых экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого непустого экземпляра x типа AnyRef, вызовы x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true. При переопределении методов equals или hashCode важно обеспечить, чтобы их поведение было согласованно с равенством ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковое значение хеш-кода (o1.hashCode == o2.hashCode).
- возвращает
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Определяющие классы
- AnyRef
def equals(arg0: AnyRef): Boolean
Метод равенства для ссылочных типов. Реализация по умолчанию делегирует вызов eq.
См. также equals в scala.Any.
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Определяющие классы
- AnyRef → Any
def exists(p: (A) => Boolean): Boolean
Проверяет, выполняется ли предикат для хотя бы одного элемента в этом наборе.
Примечание: может не завершаться для наборов бесконечного размера.
- p
предикат, используемый для проверки элементов.
- возвращает
trueесли заданный предикатpудовлетворяется по крайней мере одним элементом в этом наборе, в противном случаеfalse
- Определяющие классы
- IterableOnceOps
def filter(p: (A) => Boolean): Iterator[A]
Выбирает все элементы этого итератора, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- возвращает
новый итератор, содержащий все элементы этого итератора, удовлетворяющие заданному предикату
p. Порядок элементов сохраняется.
- Определяющие классы
- Iterator → IterableOnceOps
def filterNot(p: (A) => Boolean): Iterator[A]
Выбирает все элементы этого итератора, которые не удовлетворяют предикату.
- возвращает
новый итератор, содержащий все элементы этого итератора, которые не удовлетворяют заданному предикату
pred. Их порядок может быть не сохранён.
- Определяющие классы
- Iterator → IterableOnceOps
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.
Детали того, когда и как вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
def find(p: (A) => Boolean): Option[A]
Находит первый элемент в наборе, удовлетворяющий предикату, если такой существует.
Примечание: может не завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- p
предикат, используемый для проверки элементов.
- возвращает
значение Option, содержащее первый элемент в наборе, удовлетворяющий предикату
p, илиNoneесли такой не существует.
- Определяющие классы
- IterableOnceOps
def flatMap[B](f: (A) => IterableOnce[B]): Iterator[B]
Создаёт новый итератор, применяя функцию ко всем элементам этого итератора и используя элементы результирующих коллекций.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип результирующей коллекции определяется статическим типом итератора. Это иногда может приводить к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap ((word: String) => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новый итератор, полученный путём применения заданной функции со значением коллекции
fк каждому элементу этого итератора и конкатенации результатов.
- Определяющие классы
- Iterator → IterableOnceOps
- Примечание
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был применён, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def flatten[B](implicit ev: (A) => IterableOnce[B]): Iterator[B]
Преобразует этот итератор обходимых коллекций в итератор, образованный элементами этих обходимых коллекций.
Тип результирующей коллекции будет определяться типом итератора. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
- B
тип элементов каждой обходимой коллекции.
- returns
новый итератор, полученный путём конкатенации всех итераторов элементов.
- Определяющие классы
- Iterator → IterableOnceOps
- Примечание
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был применён, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
Сворачивает элементы этой коллекции, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок, в котором выполняются операции над элементами, не указан и может быть недетерминированным.
Примечание: не завершится для коллекций бесконечного размера.
- A1
типовой параметр для бинарного оператора, супертип
A.- z
нейтральный элемент для операции сворачивания; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора сворачивания
opко всем элементам иz, илиz, если эта коллекция пуста.
- Определяющие классы
- IterableOnceOps
def foldLeft[B](z: B)(op: (B, A) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции, слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции, слева направо, с начальным значениемzслева:op(...op(z, x_1), x_2, ..., x_n)
где
x1, ..., xn— элементы этой коллекции. Возвращаетz, если эта коллекция пуста.
- Определяющие классы
- IterableOnceOps
def foldRight[B](z: B)(op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению, справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции, справа налево, с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— элементы этой коллекции. Возвращаетz, если эта коллекция пуста.
- Определяющие классы
- IterableOnceOps
def forall(p: (A) => Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
true, если эта коллекция пуста или заданный предикатpвыполняется для всех элементов этой коллекции, в противном случаеfalse.
- Определяющие классы
- IterableOnceOps
def foreach[U](f: (A) => U): Unit
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
- Definition Classes
- IterableOnceOps
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной format строкой. Форматные строки аналогичны String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавляется с помощью неявного преобразования из AbstractIterator[A] вStringFormat[AbstractIterator[A]] выполняемого методом StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Аннотации
- @inline()
final def getClass(): Class[_ <: AnyRef]
Возвращает представление класса объекта во время выполнения.
- возвращает
объект класса, соответствующий типу получателя во время выполнения.
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
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе также.
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- возвращает
значение хэш-кода для этого объекта.
def indexOf[B >: A](elem: B, from: Int): Int
Возвращает индекс первого вхождения указанного объекта в этом итерируемом объекте после или на некотором стартовом индексе.
Примечание: может не завершаться для бесконечных итераторов.
- elem
элемент для поиска.
- from
стартовый индекс
- возвращает
индекс
>= fromпервого вхожденияelemв значения, производимые этим итератором, или -1, если такой элемент не существует до тех пор, пока не будет достигнут конец итератора.
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить вызываемый итератор. Его использование не определено и может быть изменено.
def indexOf[B >: A](elem: B): Int
Возвращает индекс первого вхождения указанного объекта в этом итерируемом объекте.
Примечание: может не завершаться для бесконечных итераторов.
- elem
элемент для поиска.
- возвращает
индекс первого вхождения
elemв значения, производимые этим итератором, или -1, если такой элемент не существует до тех пор, пока не будет достигнут конец итератора.
- Definition Classes
- Iterator
- Примечание
Переиспользование: После вызова этого метода следует удалить вызываемый итератор. Его использование не определено и может быть изменено.
def indexWhere(p: (A) => Boolean, from: Int = 0): Int
- Definition Classes
- Iterator
def isEmpty: Boolean
Проверяет, пуст ли итератор.
Примечание: Реализации в подклассах, которые не являются многократно проходными, должны позаботиться о том, чтобы не использовать какие-либо элементы при вызове isEmpty.
- возвращает
trueесли итератор не содержит элементов,falseв противном случае.
- Definition Classes
- Iterator → IterableOnceOps
- Аннотации
- @deprecatedOverriding("isEmpty is defined as !hasNext; override hasNext instead", "2.13.0")
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 isTraversableAgain: Boolean
Проверка, можно ли многократно пройтись по этому набору. Всегда истинно для Iterables и ложно для Iterators, если не переопределено.
- returns
trueесли набор можно многократно проходить;falseв противном случае.
- Definition Classes
- IterableOnceOps
final def iterator: Iterator[A]
Итератор может быть использован только один раз
- Definition Classes
- Iterator → IterableOnce
- Annotations
- @inline()
def knownSize: Int
- returns
Количество элементов в наборе, если его можно вычислить без обхода, -1 иначе. Легко вычислить обычно означает: не требует обхода набора.
- Definition Classes
- IterableOnce
final def length: Int
def map[B](f: (A) => B): Iterator[B]
Создаёт новый итератор, применяя функцию ко всем элементам этого итератора.
- B
тип элементов возвращаемого итератора.
- f
функция, применяемая к каждому элементу.
- returns
новый итератор, полученный путём применения данной функции
fк каждому элементу этого итератора и сбора результатов.
- Definition Classes
- Iterator → IterableOnceOps
- Note
Переиспользование: после вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе.
def max[B >: A](implicit ord: math.Ordering[B]): A
Нахождение максимального элемента.
- B
Тип, по которому определяется упорядоченность.
- ord
Порядок, используемый для сравнения элементов.
- returns
Максимальный элемент этого набора относительно порядка
ord.
- Definition Classes
- IterableOnceOps
- Exceptions thrown
UnsupportedOperationExceptionесли этот набор пустой.
def maxBy[B](f: (A) => B)(implicit cmp: math.Ordering[B]): A
Находит первый элемент, который даёт наибольшее значение, измеряемое функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Порядок, используемый для сравнения элементов.
- returns
первый элемент этого набора с наибольшим значением, измеренным функцией f относительно порядка
cmp.
- Definition Classes
- IterableOnceOps
- Exceptions thrown
UnsupportedOperationExceptionесли этот набор пустой.
def maxByOption[B](f: (A) => B)(implicit cmp: math.Ordering[B]): Option[A]
Находит первый элемент, который даёт наибольшее значение, измеряемое функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Порядок, используемый для сравнения элементов.
- returns
опцию, содержащую первый элемент этого набора с наибольшим значением, измеренным функцией f относительно порядка
cmp.
- Definition Classes
- IterableOnceOps
def maxOption[B >: A](implicit ord: math.Ordering[B]): Option[A]
Находит наибольший элемент.
- B
Тип, для которого определен порядок.
- ord
Порядок, который будет использоваться для сравнения элементов.
- returns
необязательное значение, содержащее наибольший элемент этой коллекции относительно порядка
ord.
- Определяющие классы
- IterableOnceOps
def min[B >: A](implicit ord: math.Ordering[B]): A
Находит наименьший элемент.
- B
Тип, для которого определен порядок.
- ord
Порядок, который будет использоваться для сравнения элементов.
- returns
наименьший элемент этой коллекции относительно порядка
ord.
- Определяющие классы
- IterableOnceOps
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def minBy[B](f: (A) => B)(implicit cmp: math.Ordering[B]): A
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Измеряющая функция.
- cmp
Порядок, который будет использоваться для сравнения элементов.
- returns
первый элемент этой коллекции с наименьшим значением, измеренным функцией f относительно порядка
cmp.
- Определяющие классы
- IterableOnceOps
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def minByOption[B](f: (A) => B)(implicit cmp: math.Ordering[B]): Option[A]
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Измеряющая функция.
- cmp
Порядок, который будет использоваться для сравнения элементов.
- returns
необязательное значение, содержащее первый элемент этой коллекции с наименьшим значением, измеренным функцией f относительно порядка
cmp.
- Определяющие классы
- IterableOnceOps
def minOption[B >: A](implicit ord: math.Ordering[B]): Option[A]
Находит наименьший элемент.
- B
Тип, для которого определен порядок.
- ord
Порядок, который будет использоваться для сравнения элементов.
- returns
необязательное значение, содержащее наименьший элемент этой коллекции относительно порядка
ord.
- Определяющие классы
- IterableOnceOps
final def mkString: String
Отображает все элементы этой коллекции в строке.
Делегирует addString, который может быть переопределен.
- returns
строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода
toString) всех элементов этой коллекции следуют друг за другом без каких-либо разделительных строк.
- Определяющие классы
- IterableOnceOps
- Аннотации
- @inline()
final def mkString(sep: String): String
Отображает все элементы этой коллекции в строке, используя разделительную строку.
Делегирует addString, который может быть переопределен.
- sep
разделительная строка.
- returns
строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода
toString) всех элементов этой коллекции разделены строкойsep.
- Определяющие классы
- IterableOnceOps
- Аннотации
- @inline()
List(1, 2, 3).mkString("|") = "1|2|3"
final def mkString(start: String, sep: String, end: String): String
Отображает все элементы этой коллекции в строке, используя строки start, end и разделитель.
Делегирует вызов к addString, который может быть переопределён.
- start
строка начала.
- sep
строка-разделитель.
- end
строка окончания.
- returns
строковое представление этой коллекции. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри, строковые представления (в соответствии с методомtoString) всех элементов этой коллекции разделяются строкойsep.
- Definition Classes
- IterableOnceOps
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- returns
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def nextOption(): Option[A]
Оборачивает значение next() в Option.
- returns
Some(next)если следующий элемент существует,Noneв противном случае.
- Definition Classes
- Iterator
def nonEmpty: Boolean
Проверяет, не пуста ли коллекция.
- returns
trueесли коллекция содержит хотя бы один элемент,falseв противном случае.
- Definition Classes
- IterableOnceOps
- Annotations
- @deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
final def notify(): Unit
Разбуждает единственную нить, ожидающую монитор объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не определено SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все нити, ожидающие монитор объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не определено SLS как член AnyRef
def padTo[B >: A](len: Int, elem: B): Iterator[B]
Копия этого итератора с добавленными элементами-заполнителями до достижения заданной длины.
- B
тип элементов возвращаемого итератора.
- len
целевая длина
- elem
значение для заполнения
- returns
новый итератор, содержащий все элементы этого итератора, дополненные минимальным количеством элементов
elemтаким образом, чтобы результирующая коллекция имела длину не менееlen.
- Definition Classes
- Iterator
def partition(p: (A) => Boolean): (Iterator[A], Iterator[A])
Разделяет этот итератор на два итератора согласно предикату.
- p
предикат для разделения
- returns
пара итераторов: итератор, удовлетворяющий предикату
p, и итератор, который не удовлетворяет. Относительный порядок элементов в результирующих итераторах такой же, как в исходном итераторе.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора неопределено, может измениться и может привести к изменениям в новых итераторах также.
def patch[B >: A](from: Int, patchElems: Iterator[B], replaced: Int): Iterator[B]
Возвращает этот итератор с изменёнными значениями. Изменение по отрицательным индексам равно изменению, начинающемуся с 0. Изменение по индексам, равным или большим длины исходного итератора, добавляет изменение в конец. Если заменённых значений больше, чем фактически существует, избыток игнорируется.
- from
Начальный индекс для изменения
- patchElems
Итератор значений изменения
- replaced
Количество значений в исходном итераторе, заменённых изменением.
- Definition Classes
- Итератор
- Примечание
Повторное использование: после вызова этого метода следует удалить итератор, на котором был вызван метод, а также итератор, переданный в качестве параметра, и использовать только возвращённый итератор. Использование старых итераторов не определено, может измениться и может привести к изменениям в новом итераторе.
def product[B >: A](implicit num: math.Numeric[B]): B
Перемножает элементы этого набора.
- B
тип результата оператора
*.- num
явный параметр, определяющий набор числовых операций, включающий оператор
*, используемый для вычисления произведения.- возвращает
произведение всех элементов этого набора относительно оператора
*вnum.
- Definition Classes
- IterableOnceOps
def reduce[B >: A](op: (B, B) => B): B
Сводит элементы этого набора, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
- B
Тип параметра для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- возвращает
Результат применения оператора reduce
opмежду всеми элементами, если набор не пустой.
- Definition Classes
- IterableOnceOps
- Исключения
UnsupportedOperationException, если этот набор пустой.
def reduceLeft[B >: A](op: (B, A) => B): B
Применяет бинарный оператор ко всем элементам этого набора слева направо.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен, или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- возвращает
-
результат вставки
opмежду последовательными элементами этого набора слева направо:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)где
x1, ..., xn- элементы этого набора.
- Definition Classes
- IterableOnceOps
- Исключения
UnsupportedOperationExceptionесли этот набор пустой.
def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого набора слева направо.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен, или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- возвращает
значение типа Option содержащее результат
reduceLeft(op)если набор не пуст,Noneв противном случае.
- Definition Classes
- IterableOnceOps
def reduceOption[B >: A](op: (B, B) => B): Option[B]
Сводит элементы этого набора, если они есть, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
- B
Тип параметра для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- возвращает
Значение типа Option, содержащее результат применения оператора reduce
opмежду всеми элементами, если набор не пуст, иNoneв противном случае.
- Definition Classes
- IterableOnceOps
def reduceRight[B >: A](op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этого набора, слева направо.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого набора, слева направо:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn— элементы этого набора.
- Definition Classes
- IterableOnceOps
- Исключения
UnsupportedOperationException, если этот набор пуст.
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого набора, слева направо.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение option, содержащее результат
reduceRight(op)если этот набор не пуст,Noneв противном случае.
- Definition Classes
- IterableOnceOps
def reversed: Iterable[A]
- Attributes
- protected
- Definition Classes
- IterableOnceOps
def sameElements[B >: A](that: IterableOnce[B]): Boolean
- Definition Classes
- Iterator
def scanLeft[B](z: B)(op: (B, A) => B): Iterator[B]
Создаёт итератор, содержащий кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- B
тип элементов в результирующем наборе
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- returns
набор с промежуточными результатами
- Definition Classes
- Iterator → IterableOnceOps
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться, и может привести к изменениям в новом итераторе также.
def size: Int
Размер этого набора.
Примечание: не завершится для наборов бесконечного размера.
- returns
количество элементов в этом наборе.
- Definition Classes
- IterableOnceOps
def slice(from: Int, until: Int): Iterator[A]
Выбирает интервал элементов. Возвращённый итератор состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- from
наименьший индекс для включения из этого итератора.
- until
наименьший индекс для исключения из этого итератора.
- returns
итератор, содержащий элементы, большие или равные индексу
from, простираясь до (но не включая) индексаuntilэтого итератора.
- Definition Classes
- Iterator → IterableOnceOps
- Примечание
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться, и может привести к изменениям в новом итераторе также.
def sliceIterator(from: Int, until: Int): Iterator[A]
Создаёт необязательно ограниченный срез, неограниченный, если until отрицателен.
- Attributes
- protected
- Definition Classes
- Iterator
def sliding[B >: A](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
- returns
Итератор, генерирующий
Seq[B]s размераsize, за исключением последнего элемента (который может быть единственным элементом), который будет усечён, если оставшихся элементов для группировки меньше, чемsizeэлементов. Это поведение можно настроить.
- Definition Classes
- Iterator
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе.
def span(p: (A) => Boolean): (Iterator[A], Iterator[A])
Разделяет этот итератор на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно), чем (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- p
предикат проверки
- returns
пара, состоящая из самого длинного префикса этого итератора, элементы которого удовлетворяют
p, и оставшаяся часть этого итератора.
- Definition Classes
- Iterator → IterableOnceOps
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах.
def splitAt(n: Int): (Iterator[A], Iterator[A])
Разделяет эту коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно), чем (c take n, c drop n).
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
позиция разделения.
- returns
пара коллекций, состоящая из первых
nэлементов этой коллекции и других элементов.
- Definition Classes
- IterableOnceOps
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах.
def stepper[S <: Stepper[_]](implicit shape: StepperShape[A, S]): S
Возвращает Stepper для элементов этой коллекции.
Stepper позволяет создавать Java-поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться как итератор, который не упаковывает элементы.
Неявный параметр StepperShape определяет тип возвращаемого Stepper в соответствии с типом элемента этой коллекции.
-
Для коллекций
Int, Short, Byte или Char, возвращается IntStepper Для коллекций Double или Float, возвращается DoubleStepper Для коллекций Long возвращается LongStepper Для любого другого типа элементов возвращается AnyStepperОбратите внимание, что этот метод переопределяется в подклассах, и тип возвращаемого значения уточняется до S with EfficientSplit, например, IndexedSeqOps.stepper. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, в то время как обычные Stepper можно преобразовать только в последовательные потоки.
- Definition Classes
- IterableOnce
def sum[B >: A](implicit num: math.Numeric[B]): B
Суммирует элементы этой коллекции.
- B
тип результата оператора
+.- num
неявный параметр, определяющий набор арифметических операций, включающий оператор
+, используемый при формировании суммы.- returns
сумма всех элементов этой коллекции относительно оператора
+вnum.
- Definition Classes
- IterableOnceOps
final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
def take(n: Int): Iterator[A]
Выбирает первые n элементов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не является упорядоченным.
- n
количество элементов, которые нужно взять из этого итератора.
- returns
итератор, содержащий только первые
nэлементов этого итератора, или весь итератор, если он содержит меньше чемnэлементов. Еслиnотрицательное, возвращает пустой итератор.
- Классы-определения
- Iterator → IterableOnceOps
- Примечание
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def takeWhile(p: (A) => Boolean): Iterator[A]
Возвращает самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не является упорядоченным.
- p
Предикат, используемый для проверки элементов.
- returns
самая длинная префиксная последовательность этого итератора, элементы которой удовлетворяют предикату
p.
- Классы-определения
- Iterator → IterableOnceOps
- Примечание
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def tapEach[U](f: (A) => U): Iterator[A]
Применяет функцию со побочным эффектом к каждому элементу в этой коллекции. Строгие коллекции сразу же применят f к своим элементам, в то время как ленивые коллекции, такие как Просмотры и LazyLists, применят f к каждому элементу только при и если этот элемент оценивается, и каждый раз, когда этот элемент оценивается.
- U
тип возвращаемого значения f
- f
функция, применяемая к каждому элементу в этом итераторе
- returns
Такая же логическая коллекция, как и эта
- Классы-определения
- Iterator → IterableOnceOps
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](implicit arg0: ClassTag[B]): Array[B]
Преобразовать коллекцию в массив.
- Классы-определения
- IterableOnceOps
final def toBuffer[B >: A]: Buffer[B]
- Классы-определения
- IterableOnceOps
- Аннотации
- @inline()
def toIndexedSeq: immutable.IndexedSeq[A]
- Классы-определения
- IterableOnceOps
def toList: immutable.List[A]
- Классы-определения
- IterableOnceOps
def toMap[K, V](implicit ev: <:<[A, (K, V)]): immutable.Map[K, V]
- Классы-определения
- IterableOnceOps
def toSeq: immutable.Seq[A]
- returns
Эта коллекция в виде
Seq[A]. Это эквивалентноto(Seq), но может быть быстрее.
- Классы-определения
- IterableOnceOps
def toSet[B >: A]: immutable.Set[B]
- Классы-определения
- IterableOnceOps
def toString(): String
Преобразует этот итератор в строку.
- возвращает
"<iterator>"
def toVector: immutable.Vector[A]
- Классы-определения
- IterableOnceOps
final def wait(): Unit
- Классы-определения
- AnyRef
- Аннотации
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long, arg1: Int): Unit
- Классы-определения
- AnyRef
- Аннотации
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long): Unit
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)]
Комбинирует этот итератор с его индексами.
- возвращает
Новый итератор, содержащий пары, состоящие из всех элементов этого итератора, соединённых с их индексом. Индексы начинаются с
0.
- Классы-определения
- Iterator → IterableOnceOps
- Примечание
Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
List("a", "b", "c").zipWithIndex == List(("a", 0), ("b", 1), ("c", 2))
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/collection/AbstractIterator.html
Явное создание экземпляра
Iteratorинтерфейса для уменьшения размера файла класса в дочерних классах.