Trait scala.collection.TraversableOnce
Companion object TraversableOnce
trait TraversableOnce[+A] extends GenTraversableOnce[A]
Члены-значения абстрактного типа
abstract def exists(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат хотя бы для одного элемента этого итерируемого объекта или объекта-перечисления.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
trueесли заданный предикатpвыполняется хотя бы для одного элемента этого итерируемого объекта или объекта-перечисления, в противном случаеfalse
- Definition Classes
- TraversableOnce → GenTraversableOnce
abstract def find(p: (A) ⇒ Boolean): Option[A]
Находит первый элемент перечисления или итерируемого объекта, удовлетворяющий предикату, если такой элемент существует.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
значение Option, содержащее первый элемент в перечислении или итерируемом объекте, удовлетворяющий предикату
p, илиNoneесли такой элемент не найден.
- Definition Classes
- TraversableOnce → GenTraversableOnce
abstract def forall(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этого перечисления или итератора.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
trueесли это перечисление или итератор пустое или данный предикатpвыполняется для всех элементов этого перечисления или итератора, в противном случаеfalse.
- Definition Classes
- TraversableOnce → GenTraversableOnce
abstract def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- returns
объект класса, соответствующий типу получателя во время выполнения.
- Definition Classes
- Any
abstract def hasDefiniteSize: Boolean
Проверяет, известно ли, что это перечисление или итератор имеет конечный размер. Все строгие коллекции имеют конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true если все элементы были вычислены. Он возвращает false если поток ещё не был обработан до конца. Непустые итераторы обычно возвращают false даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечного размера. Типичный режим отказа - бесконечный цикл. Эти методы всегда пытаются выполнить обход, не проверяя сначала, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер определён и бесконечная итерация не является проблемой.
- returns
trueесли известно, что эта коллекция имеет конечный размер,falseв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
abstract def isEmpty: Boolean
Проверяет, пуста ли коллекция или итератор.
Примечание: Реализации в подклассах, которые не являются многократно итерируемыми, должны позаботиться о том, чтобы не использовать элементы при вызове isEmpty.
- returns
trueесли перечисление или итератор не содержат элементов,falseв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
abstract def isTraversableAgain: Boolean
Проверяет, можно ли многократно итерировать по этой коллекции или итератору. Всегда true для Traversables и false для Iterators, если не переопределено.
- returns
trueесли многократное итерирование возможно,falseв противном случае.
- Definition Classes
- GenTraversableOnce
abstract def seq: TraversableOnce[A]
Версия этой коллекции со всеми операциями, реализованными последовательно (т.е. в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределён для возврата последовательной реализации этой коллекции. В обоих случаях его сложность составляет O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- TraversableOnce → GenTraversableOnce
abstract def toIterator: Iterator[A]
Возвращает итератор по элементам в этой коллекции или итераторе. Вернёт тот же итератор, если этот экземпляр уже является итератором.
Примечание: не завершится для коллекций бесконечного размера.
- returns
итератор, содержащий все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toStream: Stream[A]
Преобразует эту коллекцию или итератор в поток.
- returns
поток, содержащий все элементы этой коллекции или итератора.
- Definition Classes
- GenTraversableOnce
abstract def toTraversable: Traversable[A]
Преобразует этот обходной объект или итератор в неуказанное Перечислимое. Вернет ту же коллекцию, если этот экземпляр уже является Перечислимым.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
Перечислимое, содержащее все элементы этого обходного объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
Члены конкретных значений
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
trueесли !(this == that), в противном случае false.
- Определяющие классы
- Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает значение хэша, которое соответствует равенству значений: если два экземпляра типов значений сравниваются как true, тогда ## будет производить одинаковое значение хэша для каждого из них. Для null возвращает хэш-код, где null.hashCode выбрасывает NullPointerException.
- возвращает
значение хэша, согласованное с ==
- Определяющие классы
- Any
def +(other: String): String
- Неявный
- Этот член добавлен с помощью неявного преобразования из TraversableOnce[A] в any2stringadd[TraversableOnce[A]], выполненного методом any2stringadd в scala.Predef.
- Определяющие классы
- any2stringadd
def ->[B](y: B): (TraversableOnce[A], B)
- Неявный
- Этот член добавлен с помощью неявного преобразования из TraversableOnce[A] в ArrowAssoc[TraversableOnce[A]], выполненного методом ArrowAssoc в scala.Predef.
- Определяющие классы
- ArrowAssoc
- Аннотации
- @inline()
def /:[B](z: B)(op: (B, A) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого итерируемого объекта или последовательности слева направо.
Примечание: /: — это альтернативный синтаксис для foldLeft; z /: xs эквивалентно xs foldLeft z.
Примеры:
Обратите внимание, что функция сворачивания, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_) b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y) c: Int = 15
Примечание: для бесконечных коллекций выполнение не завершится.
Примечание: могут возвращаться разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- возвращает
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или последовательности слева направо с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn— это элементы этого итерируемого объекта или последовательности.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def :\[B](z: B)(op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого итерируемого объекта или последовательности и начальному значению, справа налево.
Примечание: :\ — это альтернативный синтаксис для foldRight; xs :\ z эквивалентно xs foldRight z.
Примечание: для бесконечных коллекций выполнение не завершится.
Примечание: могут возвращаться разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
Примеры:
Обратите внимание, что функция сворачивания, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_) b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y) c: Int = 15
- B
тип результата бинарного оператора.
- z
начальное значение
- op
бинарный оператор
- возвращает
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или последовательности справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— это элементы этого итерируемого объекта или последовательности.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
final def ==(arg0: Any): Boolean
Проверка двух объектов на равенство. Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Определяющие классы
- Any
def addString(b: StringBuilder): 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
StringBuilder, в который добавляются элементы.
- возвращает
StringBuilder
b, в который были добавлены элементы.
def addString(b: StringBuilder, sep: String): StringBuilder
Добавляет все элементы этого итерируемого объекта или итератора в строковый билдер с использованием разделительной строки. Записанный текст состоит из строковых представлений (согласно методу toString) всех элементов этого итерируемого объекта или итератора, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
- b
строковый билдер, в который добавляются элементы.
- sep
разделительная строка.
- returns
строковый билдер
b, в который были добавлены элементы.
def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder
Добавляет все элементы этого итерируемого объекта или итератора в строковый билдер, используя начальную, конечную и разделительные строки. Записанный текст начинается со строки start и заканчивается строкой end. Внутри строковые представления (согласно методу toString) всех элементов этого итерируемого объекта или итератора разделены строкой sep.
Пример:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
- b
строковый билдер, в который добавляются элементы.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковый билдер
b, в который были добавлены элементы.
def aggregate[B](z: ⇒ B)(seqop: (B, A) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общая форма fold и reduce. Аналогично foldLeft, не требует, чтобы результат был супертипом типа элемента. Кроме того, позволяет обрабатывать параллельные коллекции по частям, а затем объединяет промежуточные результаты.
aggregate разбивает итерируемый объект или итератор на разделы и обрабатывает каждый раздел последовательным применением seqop, начиная с z (как foldLeft). Эти промежуточные результаты затем объединяются с помощью combop (как fold). Реализация этой операции может работать с произвольным количеством разделов коллекции (даже с 1), поэтому combop может вызываться произвольное количество раз (даже 0).
Например, рассмотрим суммирование целочисленных значений списка символов. Начальное значение для суммы - 0. Сначала seqop преобразует каждый входной символ в целое число и добавляет его к сумме (раздела). Затем combop просто суммирует промежуточные результаты разделов:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип накапливаемых результатов
- z
начальное значение для накапливаемого результата раздела - это, как правило, нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования) и может быть вычислен более одного раза- seqop
оператор, используемый для накопления результатов в пределах раздела
- combop
ассоциативный оператор, используемый для объединения результатов из разных разделов
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def asInstanceOf[T0]: T0
Приводит объект-получатель к типу T0.
Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания в Scala. Поэтому выражение 1.asInstanceOf[String] может выбросить ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] не выбросит. В последнем примере, так как тип аргумента стёрся во время компиляции, невозможно проверить, соответствуют ли содержимое списка нужному типу.
- returns
объект-получатель.
- Definition Classes
- Any
- Исключения
ClassCastException, если объект-получатель не является экземпляром стёртого типаT0.
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент итерируемого объекта или итератора, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- pf
частичная функция
- returns
значения Option, содержащее результат применения pf к первому значению, для которого она определена, или
Noneесли такового нет.
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def copyToArray(xs: Array[A]): Unit
Копирует элементы этого итерируемого объекта или итератора в массив. Заполняет заданный массив xs значениями из этого итерируемого объекта или итератора. Копирование завершится, когда будет достигнут конец текущего итерируемого объекта или итератора или конец целевого массива.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этого итерируемого объекта или итератора в массив. Заполняет заданный массив xs значениями этого итерируемого объекта или итератора, начиная с индекса start. Копирование прекратится, как только будет достигнут конец текущего итерируемого объекта или итератора, или конец целевого массива.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- Definition Classes
- TraversableOnce → GenTraversableOnce
abstract def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этого итерируемого объекта или итератора в массив. Заполняет заданный массив xs не более чем len элементами этого итерируемого объекта или итератора, начиная с позиции start. Копирование прекратится, как только будет достигнут конец текущего итерируемого объекта или итератора, или конец целевого массива, или len элементов будут скопированы.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество элементов для копирования.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: A](dest: Buffer[B]): Unit
Копирует все элементы этого итерируемого объекта или итератора в буфер.
Примечание: не завершится для коллекций бесконечного размера.
- dest
Буфер, в который копируются элементы.
def count(p: (A) ⇒ Boolean): Int
Подсчитывает количество элементов в итерируемом объекте или итераторе, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def ensuring(cond: (TraversableOnce[A]) ⇒ Boolean, msg: ⇒ Any): TraversableOnce[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в Ensuring[TraversableOnce[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (TraversableOnce[A]) ⇒ Boolean): TraversableOnce[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в Ensuring[TraversableOnce[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): TraversableOnce[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в Ensuring[TraversableOnce[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): TraversableOnce[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в Ensuring[TraversableOnce[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def equals(arg0: Any): Boolean
Сравнивает объект-получатель (this) с объектом-аргументом (that) на эквивалентность.
Любая реализация этого метода должна быть отношением эквивалентности:
-
Он является рефлексивным: для любого экземпляра
x типа Any, x.equals(x) должен возвращать true.Он является симметричным: для любых экземпляров x и y типа Any, x.equals(y) должен возвращать true, если и только если y.equals(x) возвращает true.Он является транзитивным: для любых экземпляров x, y и z типа Any, если x.equals(y) возвращает true, а y.equals(z) возвращает true, то x.equals(z) должен возвращать true.Если вы переопределяете этот метод, вам следует проверить, что ваша реализация остается отношением эквивалентности. Кроме того, при переопределении этого метода обычно необходимо переопределить hashCode, чтобы гарантировать, что объекты, которые являются «равными» (o1.equals(o2) возвращает true) хешируются в одно и то же значение scala.Int. (o1.hashCode.equals(o2.hashCode)).
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- Any
def filter(p: (A) ⇒ Boolean): TraversableOnce[A]
- Implicit
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в MonadOps[A] методом MonadOps в scala.collection.TraversableOnce.
- Definition Classes
- MonadOps
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Implicit
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в MonadOps[A] методом MonadOps в scala.collection.TraversableOnce.
- Definition Classes
- MonadOps
def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1
Вычисляет результат на основе элементов этого объекта-итератора, используя заданный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
Примечание: не завершит работу для коллекций бесконечного размера.
- A1
тип параметра для бинарного оператора, являющийся надтипом
A.- z
нейтральный элемент для операции fold; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора fold
opмежду всеми элементами иz, илиzесли этот объект-итератор пустой.
- Definition Classes
- TraversableOnce → GenTraversableOnce
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если этот объект-итератор пустой.
- Definition Classes
- TraversableOnce → GenTraversableOnce
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если этот объект-итератор пустой.
- Definition Classes
- TraversableOnce → GenTraversableOnce
abstract def foreach(f: (A) ⇒ Unit): Unit
Применяет функцию f ко всем элементам этого обходчика или итератора.
Примечание: этот метод лежит в основе реализации большинства других операций над коллекциями. Важно реализовать этот метод эффективным способом.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fотбрасывается.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой format. Строки форматирования соответствуют String.format (@see java.lang.String.format).
- Неявный
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в StringFormat[TraversableOnce[A]] с помощью метода StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Аннотации
- @inline()
def hashCode(): Int
Вычисляет значение хэш-кода для объекта.
Алгоритм хэширования по умолчанию зависит от платформы.
Обратите внимание, что для двух объектов могут быть одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)) и при этом они могут не быть равными (o1.equals(o2) возвращает false). Вырожденная реализация могла бы всегда возвращать 0. Однако, требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true ), у них были идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода обязательно проверьте, что поведение согласуется с методом equals.
- возвращает
значение хэш-кода для этого объекта.
- Definition Classes
- Any
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип объекта-получателя T0.
Обратите внимание, что результат проверки зависит от стирания типов Scala. Таким образом, выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, поскольку аргумент типа стёрт во время компиляции, невозможно проверить, являются ли элементы списка указанного типа.
- возвращает
trueесли объект-получатель является экземпляром стёртого типаT0;falseв противном случае.
- Definition Classes
- Any
def map[B](f: (A) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Definition Classes
- MonadOps
def max: A
Находит наибольший элемент.
- возвращает
наибольший элемент этого обходчика или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот обходчик или итератор пустой.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этого обходчика или итератора с наибольшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот обходчик или итератор пустой.
def min: A
Находит наименьший элемент.
- возвращает
наименьший элемент этого обходчика или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот обходчик или итератор пустой.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этого перебираемого объекта или итератора с наименьшим значением, измеренным функцией f.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот перебираемый объект или итератор пустой.
def mkString: String
Отображает все элементы этого перебираемого объекта или итератора в строке.
- возвращает
строковое представление этого перебираемого объекта или итератора. В результирующей строке строковые представления (в соответствии с методом
toString) всех элементов этого перебираемого объекта или итератора следуют друг за другом без разделительной строки.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этого перебираемого объекта или итератора в строке с использованием разделительной строки.
- sep
разделительная строка.
- возвращает
строковое представление этого перебираемого объекта или итератора. В результирующей строке строковые представления (в соответствии с методом
toString) всех элементов этого перебираемого объекта или итератора разделены строкойsep.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого перебираемого объекта или итератора в строке, используя начальную, конечную и разделительные строки.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- возвращает
строковое представление этого перебираемого объекта или итератора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (в соответствии с методомtoString) всех элементов этого перебираемого объекта или итератора разделены строкойsep.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
def nonEmpty: Boolean
Проверяет, не является ли перебираемый объект или итератор пустым.
- возвращает
trueесли перебираемый объект или итератор содержит по крайней мере один элемент,falseв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def product: A
Перемножает элементы этого набора.
- возвращает
произведение всех элементов в этом перебираемом объекте или итераторе чисел типа
Int. ВместоInt, любой другой типTс неявнымNumeric[T]реализацией может быть использован в качестве типа элементов перебираемого объекта или итератора и как тип результатаproduct. Примерами таких типов являются:Long,Float,Double,BigInt.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1
Сводит элементы этого перебираемого объекта или итератора с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Тип параметра для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- возвращает
Результат применения оператора reduce
opмежду всеми элементами, если перебираемый объект или итератор не пустой.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
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- это элементы этого перебираемого объекта или итератора.
- Исключения
UnsupportedOperationExceptionесли этот перебираемый объект или итератор пустой.
def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
Применяет бинарный оператор ко всем элементам этого обхода или итератора слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceLeft(op)если этот обход или итератор не пуст,Noneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]
Сводит элементы этого обхода или итератора, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок, в котором операции выполняются над элементами, не указан и может быть недетерминированным.
- A1
Параметр типа для бинарного оператора, надтип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Необязательное значение, содержащее результат применения оператора reduce
opмежду всеми элементами, если коллекция не пуста, иNoneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
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являются элементами этого обхода или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Выбрасываемые исключения
UnsupportedOperationExceptionесли этот обход или итератор пуст.
def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
Применяет бинарный оператор ко всем элементам этого обхода или итератора справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceRight(op)если этот обход или итератор не пуст,Noneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def reversed: List[A]
- Атрибуты
- protected[this]
def size: Int
Размер этого обхода или итератора.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
количество элементов в этом обходе или итераторе.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если его можно вычислить недорого
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер нельзя определить недорого
- Атрибуты
- protected[collection]
- Определяющие классы
- GenTraversableOnce
def sum: A
Суммирует элементы этой коллекции.
- returns
сумма всех элементов в этом обходе или итераторе чисел типа
Int. ВместоInt, любой другой типTс неявной реализациейNumeric[T]может использоваться как тип элемента обхода или итератора и как тип результатаsum. Примерами таких типов являются:Long,Float,Double,BigInt.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def to[Col[_]]: Col[A]
Преобразует этот обход или итератор в другой, копируя все элементы.
Примечание: не завершается для бесконечных коллекций.
- Col
Тип коллекции, которую нужно создать.
- возвращает
новая коллекция, содержащая все элементы этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует этот обход или итератор в массив.
Примечание: не завершается для бесконечных коллекций.
- возвращает
массив, содержащий все элементы этого обхода или итератора. Для типа элемента этого обхода или итератора должен быть доступен
ClassTag.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toBuffer[B >: A]: Buffer[B]
Использует содержимое этого обхода или итератора для создания нового изменяемого буфера.
Примечание: не завершается для бесконечных коллекций.
- возвращает
буфер, содержащий все элементы этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toIndexedSeq: immutable.IndexedSeq[A]
Преобразует этот обход или итератор в индексированную последовательность.
Примечание: не завершается для бесконечных коллекций.
- возвращает
индексированная последовательность, содержащая все элементы этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toIterable: Iterable[A]
Преобразует этот обход или итератор в итерируемую коллекцию. Обратите внимание, что выбор целевого Iterable в этой реализации по умолчанию является ленивым, так как этот TraversableOnce может быть ленивым и невычисленным (то есть это может быть итератор, который можно просмотреть только один раз).
Примечание: не завершается для бесконечных коллекций.
- возвращает
Iterableсодержащий все элементы этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toList: List[A]
Преобразует этот обход или итератор в список.
Примечание: не завершается для бесконечных коллекций.
- возвращает
список, содержащий все элементы этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toMap[T, U]: Map[T, U]
Преобразует этот обход или итератор в карту. Этот метод недоступен, если элементы не являются членами Tuple2, каждая ((T, U)) становится парой ключ-значение в карте. Повторяющиеся ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, ключ, который находится в результирующей карте, не определен.
Примечание: не завершается для бесконечных коллекций.
- возвращает
карта типа
immutable.Map[T, U], содержащая все пары ключ/значение типа(T, U)этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toSeq: Seq[A]
Преобразует этот обход или итератор в последовательность. Как и в случае toIterable, он ленивый в этой реализации по умолчанию, так как этот TraversableOnce может быть ленивым и невычисленным.
Примечание: не завершается для бесконечных коллекций.
- возвращает
последовательность, содержащая все элементы этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toSet[B >: A]: immutable.Set[B]
Преобразует этот обход или итератор в множество.
Примечание: не завершается для бесконечных коллекций.
- возвращает
множество, содержащее все элементы этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toString(): String
Возвращает строковое представление объекта.
Представление по умолчанию зависит от платформы.
- возвращает
строковое представление объекта.
- Классы-определения
- Any
def toVector: Vector[A]
Преобразует этот обход или итератор в вектор.
Примечание: не завершается для бесконечных коллекций.
- возвращает
вектор, содержащий все элементы этого обхода или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def withFilter(p: (A) ⇒ Boolean): Iterator[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Определяющие классы
- MonadOps
def →[B](y: B): (TraversableOnce[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из TraversableOnce[A] в ArrowAssoc[TraversableOnce[A]] с помощью метода ArrowAssoc в scala.Predef.
- Определяющие классы
- ArrowAssoc
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/TraversableOnce.html
Шаблонный интерфейс для коллекций, которые можно пройти только один раз или один или более раз.
Этот интерфейс существует в основном для устранения дублирования кода между
IteratorиTraversable, и поэтому реализует некоторые общие методы, которые могут быть реализованы только через foreach без доступа кBuilder. Он также включает ряд абстрактных методов, реализации которых предоставляютсяIterator,Traversable, и т. д. Он содержит реализации, общие дляIteratorsиTraversables, такие как свертки, преобразования и другие операции, которые проходят по некоторым или всем элементам и возвращают производное значение. Не рекомендуется прямо наследовать отTraversableOnce- вместо этого рассмотрите объявлениеIteratorс методомnextиhasNextили созданиеIteratorс одним из методов объектаIterator. Рассмотрите возможность объявления подклассаTraversable, если элементы могут быть пройдены многократно.2.8