Spec-Zone.ru › Scala 3.2

Класс BufferedSource.BufferedSource

Исходный код

класс BufferedSource(inputStream: InputStream, bufferSize: Int)(implicit val codec: Codec) extends Source

Этот объект предоставляет удобные методы для создания итерируемого представления файла-источника.

Предки
класс Source
интерфейс Closeable
интерфейс AutoCloseable
интерфейс Iterator[Char]
интерфейс IterableOnceOps[Char, Iterator, Iterator[Char]]
интерфейс IterableOnce[Char]
класс Object
интерфейс Matchable
класс Any

Классы

Source
класс BufferedLineIterator extends AbstractIterator[String] with Iterator[String]

Унаследованные классы

Source
класс GroupedIterator[B >: A](self: Iterator[B], size: Int, step: Int) extends AbstractIterator[Seq[B]]

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

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

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

Source
класс LineIterator extends AbstractIterator[String] with Iterator[String]

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

Source
объект NoPositioner extends Positioner

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

Source
класс Positioner(encoder: Position)

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

Source
объект RelaxedPosition

Реализация Position, которая игнорирует ошибки в позициях.

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

Source
объект RelaxedPositioner extends Positioner

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

Конструкторы

Source
конструктор this(inputStream: InputStream)(implicit codec: Codec)

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

Source
переопределение addString(sb: StringBuilder, start: String, sep: String, end: String): StringBuilder

Эффективно добавляет все оставшиеся входные данные.

Примечание: Эта функция может временно загрузить весь буфер в память.

Определяющие классы IterableOnceOps

Source
bufferedReader(): BufferedReader

Source
переопределение getLines(): Iterator[String]

Возвращает итератор, возвращающий строки (НЕ включая символ(ы) новой строки). Он будет рассматривать любой из \r\n, \r или \n как разделитель строк (наибольшее совпадение) — если вам нужна более точная обработка, вы можете напрямую унаследовать Source#LineIterator.

Определяющие классы Source

Source
reader(): InputStreamReader

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

Source
финальный ++[B >: Char](xs: => IterableOnce[B]): Iterator[B]

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

Source
финальный addString(b: StringBuilder): StringBuilder

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

Пример:

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = new StringBuilder()
b: StringBuilder =

scala> val h = a.addString(b)
h: StringBuilder = 1234
Параметры значений
b

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

Возвращаемое значение

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

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

Source
финальный addString(b: StringBuilder, sep: String): StringBuilder

Добавляет все элементы этой коллекции в строковый буфер, используя разделитель. Записываемый текст состоит из строковых представлений (согласно методу toString) всех элементов этой коллекции, разделенных строкой sep.

Пример:

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = new StringBuilder()
b: StringBuilder =

scala> a.addString(b, ", ")
res0: StringBuilder = 1, 2, 3, 4
Параметры значений
b

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

sep

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

Возвращаемое значение

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

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

Source
buffered: BufferedIterator[A]

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

Возвращаемое значение

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

См. также

scala.collection.BufferedIterator

Примечание

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

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

Source
def ch: Символ

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

Source
def close(): Единица

Метод close() закрывает базовый ресурс.

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

Source
def collect[B](pf: ЧастичнаяФункция[Символ, B]): Итератор[B]

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

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

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

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

частичная функция, которая фильтрует и отображает итератор.

Возвращает

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

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

Source
def collectFirst[B](pf: ЧастичнаяФункция[Символ, B]): Опция[B]

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

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

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

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

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

Возвращает

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

Пример

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

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

Source
def concat[B >: Символ](xs: => IterableOnce[B]): Итератор[B]

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

Source
def contains(elem: Любой): Булево

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

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

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

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

Возвращает

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

Примечание

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

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

Source
def copyToArray[B >: Символ](xs: Массив[B], start: Целое, len: Целое): Целое

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

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

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

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

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

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

максимальное количество копируемых элементов.

start

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

xs

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

Возвращает

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

Примечание

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

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

Source
def copyToArray[B >: Символ](xs: Массив[B], start: Целое): Целое

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

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

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

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

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

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

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

xs

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

Возвращает

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

Примечание

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

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

Source
def copyToArray[B >: Символ](xs: Массив[B]): Целое

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

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

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

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

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

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

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

Возвращает

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

Примечание

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

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

Source
def corresponds[B](that: IterableOnce[B])(p: (Символ, B) => Булево): Булево

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

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

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

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

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

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

that

другая коллекция

Возвращает

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

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

Source
def count(p: Символ => Булево): Целое

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

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

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

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

Возвращает

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

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

Source
def distinct: Iterator[A]

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

Возвращает

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

Примечание

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

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

Source
def distinctBy[B](f: Char => B): Iterator[A]

Создаёт новый итератор из этого итератора без каких-либо дублируемых элементов, как определено ==, после применения преобразующей функции f.

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

тип элементов после преобразования функцией f

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

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

Возвращает

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

Примечание

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

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

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

Выбирает все элементы, кроме первых n.

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

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

количество элементов для удаления из этого итератора.

Возвращает

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

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

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

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

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

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

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

Возвращает

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

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

Source
def duplicate: (Iterator[A], Iterator[A])

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

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

Возвращает

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

Примечание

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

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

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

Source
def exists(p: Char => Boolean): Boolean

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

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

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

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

Возвращает

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

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

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

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

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

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

Возвращает

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

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

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

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

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

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

Возвращает

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

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

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

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

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

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

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

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

Возвращает

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

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

Source
def flatMap[B](f: Char => 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

функция, применяемая к каждому элементу.

Возвращает

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

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

Source
def flatten[B](implicit ev: Char => 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

тип элементов каждой итерируемой коллекции.

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

явное преобразование, которое утверждает, что тип элемента этого итератора является GenTraversable.

Возвращает

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

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

Исходный код
def fold[A1 >: Символ](z: A1)(op: (A1, A1) => A1): A1

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

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

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

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

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

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

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

z

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

Возвращает

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

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

Исходный код
def foldLeft[B](z: B)(op: (B, Символ) => B): B

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

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

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

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

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

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

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

z

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

Возвращает

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

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

Исходный код
def foldRight[B](z: B)(op: (Символ, B) => B): B

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

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

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

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

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

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

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

z

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

Возвращает

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

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

Исходный код
def forall(p: Символ => Булево): Булево

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

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

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

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

Возвращает

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

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

Исходный код
def foreach[U](f: Символ => U): Единица

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

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

Исходный код
def grouped[B >: Символ](size: Целое число): 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: Булево

Возвращает true если у этого источника есть ещё символы.

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

Исходный код
def indexOf[B >: Символ](elem: B, from: Целое число): Целое число

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

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

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

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

from

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

Возвращает

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

Примечание

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

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

Исходный код
def indexOf[B >: Символ](elem: B): Целое число

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

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

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

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

Возвращает

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

Примечание

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

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

Исходный код
def indexWhere(p: Символ => Булево, from: Целое число): Целое число

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

Исходный код
override def isEmpty: Булево

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

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

Возвращает

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

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

Исходный код
def isTraversableAgain: Boolean

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

Возвращает

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

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

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

Итератор может быть использован только один раз

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

Исходный код
def knownSize: Int

Возвращает

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

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

Исходный код
final def length: Int

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

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

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

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

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

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

функция, применяемая к каждому элементу.

Возвращает

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

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

Исходный код
def max[B >: Char](implicit ord: Ordering[B]): A

Находит максимальный элемент.

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

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

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

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

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

Возвращает

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

Исключения
UnsupportedOperationException

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

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

Исходный код
def maxBy[B](f: Char => B)(implicit cmp: Ordering[B]): A

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

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

Тип параметров
B

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

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

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

f

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

Возвращает

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

Выбрасывает
UnsupportedOperationException

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

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

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

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

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

Тип параметров
B

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

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

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

f

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

Возвращает

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

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

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

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

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

Тип параметров
B

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

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

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

Возвращает

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

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

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

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

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

Тип параметров
B

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

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

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

Возвращает

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

Выбрасывает
UnsupportedOperationException

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

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

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

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

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

Тип параметров
B

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

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

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

f

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

Возвращает

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

Выбрасывает
UnsupportedOperationException

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

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

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

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

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

Тип параметров
B

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

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

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

f

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

Возвращает

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

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

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

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

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

Тип параметров
B

Тип, для которого определен порядок.

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

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

Возвращает

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

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

Источник
final def mkString: String

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

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

Возвращает

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

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

Источник
final def mkString(sep: String): String

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

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

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

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

Возвращает

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

Пример

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

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

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

Источник
def next(): Char

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

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

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

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

Возвращает

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

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

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

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

Возвращает

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

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

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

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

Тип параметров
B

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

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

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

len

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

Возвращает

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

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

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

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

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

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

Возвращает

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

Примечание

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

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

Источник
def patch[B >: Char](from: Int, patchElems: Iterator[B], replaced: Int): Iterator[B]

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

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

Начальный индекс для замены

patchElems

Итератор значений замены

replaced

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

Примечание

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

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

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

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

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

Перемножает элементы этой коллекции.

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

Тип параметров
B

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

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

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

Возвращает

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

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

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

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

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

Тип параметров
B

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

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

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

Возвращает

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

Исключения
UnsupportedOperationException

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

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

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

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

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

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

Тип параметров
B

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

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

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

Возвращает

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

Исключения
UnsupportedOperationException

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

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

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

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

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

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

Тип параметров
B

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

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

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

Возвращает

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

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

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

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

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

Тип параметров
B

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

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

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

Возвращает

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

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

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

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

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

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

Тип параметров
B

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

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

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

Возвращает

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

Исключения
UnsupportedOperationException

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

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

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

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

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

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

Тип параметров
B

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

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

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

Возвращает

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

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

Источник
def report(pos: Int, msg: String, out: PrintStream): Unit

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

сообщение об ошибке для отчёта

out

PrintStream для использования

pos

позиция источника (строка/столбец)

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

Источник
def reportError(pos: Int, msg: String, out: PrintStream): Unit

Отправляет сообщение об ошибке в поток вывода out.

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

сообщение об ошибке для отчёта

out

PrintStream для использования (необязательно: по умолчанию Console.err)

pos

позиция источника (строка/столбец)

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

Источник
def reportWarning(pos: Int, msg: String, out: PrintStream): Unit

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

сообщение об ошибке для отчёта

out

PrintStream для использования (необязательно: по умолчанию Console.out)

pos

позиция источника (строка/столбец)

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

Источник
def reset(): Source

Метод reset() создаёт свежую копию этого Source.

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

Source
protected def reversed: Iterable[A]

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

Source
def sameElements[B >: Char](that: IterableOnce[B]): Boolean

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

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

тип элементов набора that.

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

набор для сравнения

Возвращает

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

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

Source
def scanLeft[B](z: B)(op: (B, Char) => B): Iterator[B]

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

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

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

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

тип элементов в результирующей коллекции

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

бинарный оператор, применяемый к промежуточному результату и элементу

z

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

Возвращает

коллекция с промежуточными результатами

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

Source
def size: Int

Размер этой коллекции.

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

Возвращает

количество элементов в этой коллекции.

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

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

Выбирает интервал элементов. Возвращаемый итератор состоит из всех элементов x, которые удовлетворяют инварианту:

from <= indexOf(x) < until

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

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

наименьший индекс для включения из этого итератора.

until

наименьший индекс для исключения из этого итератора.

Возвращает

итератор, содержащий элементы, большие или равные индексу from, продолжая до (но не включая) индекс until этого итератора.

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

Source
def sliding[B >: Char](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

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

Возвращает

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

Примечание

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

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

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

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

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

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

Примечание

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

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

Source
def splitAt(n: Int): (C, C)

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

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

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

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

позиция разделения.

Возвращает

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Возвращает

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

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

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

Выбирает первые n элементов.

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

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

количество элементов, которые нужно взять из этого итератора.

Возвращает

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

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

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

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

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

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

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

Возвращает

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

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

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

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

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

тип возвращаемого значения f

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

функция для применения к каждому элементу в этом итераторе

Возвращает

такая же логическая коллекция, как и эта

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

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

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

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

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

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

Преобразование коллекции в массив.

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

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

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

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

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

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

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

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

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

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

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

Возвращает

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

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

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

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

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

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

Возвращает

"<iterator>"

Примечание

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

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

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

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

Источник
def withClose(f: () => Unit): Source.this.type

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

Источник
def withDescription(text: String): Source.this.type

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

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

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

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

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

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

Возвращает

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

Примечание

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

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

Source
def withPositioning(pos: Positioner): Source.this.type

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

Source
def withPositioning(on: Boolean): Source.this.type

Изменить или отключить позиционер.

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

Source
def withReset(f: () => Source): Source.this.type

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

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

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

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

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

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

Сцепляет этот итератор с его индексами.

Возвращает

Новый итератор, содержащий пары, состоящие из всех элементов этого итератора, спаренных с их индексом. Индексы начинаются с 0.

Пример

List("a", "b", "c").zipWithIndex == List(("a", 0), ("b", 1), ("c", 2))

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

Конкретные поля

Source
override val iter: Iterator[Char]

фактический итератор

Унаследованные поля

Source
var descr: String

описание этого источника, по умолчанию пустое

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

Source
var nerrors: Int

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

Source
var nwarnings: Int

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

Неявные значения

Source
implicit val codec: Codec

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

Spec-Zone.ru

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