Трейт scala.collection.TraversableProxy
Трейт TraversableProxy[+A] extends Traversable[A] with TraversableProxyLike[A, Traversable[A]]
Члены типа
Класс WithFilter extends FilterMonadic[A, Repr]
Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.
- Определения классов
- TraversableLike
Тип Self = Traversable[A]
Тип, реализующий эту traversable
- Атрибуты
- protected[this]
- Определения классов
- TraversableLike
Абстрактные члены значения
абстрактный def self: Traversable[A]
- Определения классов
- TraversableProxyLike → Proxy
Члены-значения конкретных типов
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
true, если !(this == that), в противном случае false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode, за исключением упакованных числовых типов и null. Для чисел возвращает хэш-значение, соответствующее равенству значений: если два экземпляра типа значения сравниваются как true, то ## для каждого из них вернёт одинаковое хэш-значение. Для null возвращает хэш-код, где null.hashCode вызывает NullPointerException.
- возвращает
значение хэша, соответствующее ==
- Definition Classes
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в any2stringadd[TraversableProxy[A]], выполненное методом any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
def ++[B >: A, That](xs: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Возвращает новую коллекцию с элементами из левого операнда, после которых следуют элементы из правого операнда. Тип элементов возвращаемой коллекции — самый специфичный суперкласс, включающий типы элементов двух операндов.
- B
тип элемента возвращаемой коллекции.
- That
класс возвращаемой коллекции. По возможности,
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, допускается ли тип элементаBдля этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- bf
неявное значение класса
CanBuildFrom, которое определяет возвращаемый классThatпо текущему типу представленияReprи новому типу элементаB.- возвращает
новую коллекцию типа
That, содержащую все элементы этой коллекции, за которыми следуют все элементыthat.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def ++:[B >: A, That](that: Traversable[B])(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Аналогично ++, возвращает новую коллекцию, содержащую элементы из левого операнда, после которых следуют элементы из правого операнда.
Отличается от ++ тем, что тип правого операнда определяет тип результата, а не левого. Мемоническая подсказка: двоеточие стоит со стороны нового типа коллекции.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
Этот перегруз существует, потому что: для реализации ++: нужно использовать реализацию ++, так как многие коллекции переопределяют её с более эффективными версиями.
Поскольку у TraversableOnce нет метода ++, его нужно реализовывать напрямую, но Traversable и ниже могут использовать перегруз.
- B
тип элемента возвращаемой коллекции.
- That
класс возвращаемой коллекции. По возможности,
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, допускается ли тип элементаBдля этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
объект traversable для добавления.
- bf
неявное значение класса
CanBuildFrom, которое определяет возвращаемый классThatпо текущему типу представленияReprи новому типу элементаB.- возвращает
новую коллекцию типа
That, содержащую все элементы этой коллекции, за которыми следуют все элементыthat.
- Definition Classes
- TraversableLike
def ++:[B](that: TraversableOnce[B]): Traversable[B]
Аналогично ++, возвращает новую коллекцию, содержащую элементы из левого операнда, после которых следуют элементы из правого операнда.
Отличается от ++ тем, что тип правого операнда определяет тип результата, а не левого. Мемоническая подсказка: двоеточие стоит со стороны нового типа коллекции.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
- B
тип элемента возвращаемой коллекции.
- that
объект traversable для добавления.
- возвращает
новую коллекцию, содержащую все элементы этой коллекции, за которыми следуют все элементы
that.
- Definition Classes
- TraversableLike
def ->[B](y: B): (TraversableProxy[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в ArrowAssoc[TraversableProxy[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- элементы этой коллекции перебираемых элементов.
- Классы определений
- TraversableProxyLike → 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- элементы этой коллекции перебираемых элементов.
- Классы определений
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
true, если объект приемника эквивалентен аргументу;falseв противном случае.
- Классы определений
- AnyRef → Any
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, в который были добавлены элементы.
- Классы определений
- TraversableProxyLike → TraversableOnce
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, в который были добавлены элементы.
- Классы определений
- TraversableProxyLike → TraversableOnce
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
- TraversableProxyLike → TraversableOnce
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
- Exceptions thrown
ClassCastException, если получаемый объект не является экземпляром стирания типаT0.
def clone(): AnyRef
Создать копию получаемого объекта.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия получаемого объекта.
def collect[B](pf: PartialFunction[A, B]): Traversable[B]
Создаёт новый набор, применяя частичную функцию ко всем элементам этого набора, для которых функция определена.
- B
тип элемента возвращаемого набора.
- pf
частичная функция, которая фильтрует и отображает набор.
- returns
новый набор, полученный в результате применения заданной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент в итерируемом наборе или итераторе, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- pf
частичная функция
- returns
значение Option, содержащее результат применения pf к первому значению, для которого оно определено, или
None, если такого значения нет.
- Definition Classes
- TraversableOnce
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def companion: GenericCompanion[Traversable]
Объект-компаньон фабрики, который создает экземпляры класса Traversable. (или его Iterable суперкласса, где класс Traversable не является Seq.)
- Определяющие классы
- Traversable → GenTraversable → GenericTraversableTemplate
def copyToArray(xs: Array[A]): Unit
Копирует элементы этой коллекции в массив. Заполняет заданный массив xs значениями из этой коллекции. Копирование остановится, как только будет достигнут конец текущей коллекции или конец целевого массива.
Примечание: не будет завершаться для коллекций бесконечного размера.
- xs
массив для заполнения.
- Определяющие классы
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этой коллекции в массив. Заполняет заданный массив xs значениями из этой коллекции, начиная с индекса start. Копирование остановится, как только будет достигнут конец текущей коллекции или конец целевого массива.
Примечание: не будет завершаться для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- Определяющие классы
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этой коллекции в массив. Заполняет заданный массив xs не более чем len элементами этой коллекции, начиная с позиции start. Копирование остановится, как только будет достигнут конец текущей коллекции, конец целевого массива или len элементов будут скопированы.
Примечание: не будет завершаться для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество копируемых элементов.
- Определяющие классы
- TraversableProxyLike → TraversableLike → TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: A](dest: Buffer[B]): Unit
Копирует все элементы этой коллекции-переборщика в буфер.
Примечание: не будет завершаться для коллекций бесконечного размера.
- dest
Буфер, в который копируются элементы.
- Определяющие классы
- TraversableProxyLike → TraversableOnce
def count(p: (A) ⇒ Boolean): Int
Подсчитывает количество элементов в коллекции-переборщике, удовлетворяющих предикату.
- p
предикат для проверки элементов.
- возвращает
количество элементов, удовлетворяющих предикату
p.
- Определяющие классы
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def drop(n: Int): Traversable[A]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов, которые нужно исключить из этой коллекции-переборщика.
- возвращает
коллекция-переборщик, состоящая из всех элементов этой коллекции-переборщика, кроме первых
nэлементов, или же пустая коллекция-переборщик, если в этой коллекции-переборщике меньше чемnэлементов. Еслиnотрицательно, не исключать никаких элементов.
- Определяющие классы
- TraversableProxyLike → TraversableLike → GenTraversableLike
def dropWhile(p: (A) ⇒ Boolean): Traversable[A]
Исключает наибольший префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- возвращает
наибольший суффикс этой коллекции-переборщика, первый элемент которого не удовлетворяет предикату
p.
- Определяющие классы
- TraversableProxyLike → TraversableLike → GenTraversableLike
def ensuring(cond: (TraversableProxy[A]) ⇒ Boolean, msg: ⇒ Any): TraversableProxy[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в Ensuring[TraversableProxy[A]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: (TraversableProxy[A]) ⇒ Boolean): TraversableProxy[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в Ensuring[TraversableProxy[A]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): TraversableProxy[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в Ensuring[TraversableProxy[A]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean): TraversableProxy[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в Ensuring[TraversableProxy[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(that: 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)).
- that
объект для сравнения с этим объектом на равенство.
- возвращает
true, если получаемый объект эквивалентен аргументу;falseв противном случае.
def exists(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат хотя бы для одного элемента этого коллектора.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
false, если этот коллектор пуст, иначеtrue, если заданный предикатpвыполняется для некоторых элементов этого коллектора, в противном случаеfalse
- Definition Classes
- TraversableProxyLike → TraversableLike → TraversableOnce → GenTraversableOnce
def filter(p: (A) ⇒ Boolean): Traversable[A]
Выбирает все элементы этого коллектора, удовлетворяющие предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый коллектор, состоящий из всех элементов этого коллектора, удовлетворяющих заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def filterNot(p: (A) ⇒ Boolean): Traversable[A]
Выбирает все элементы этого коллектора, которые не удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый коллектор, состоящий из всех элементов этого коллектора, которые не удовлетворяют заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def finalize(): Unit
Вызывается сборщиком мусора на объекте-приёмнике, когда больше нет ссылок на объект.
Подробности о том, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- Note
не указано SLS как член AnyRef
def find(p: (A) ⇒ Boolean): Option[A]
Находит первый элемент коллектора, удовлетворяющий предикату, если он есть.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового коллектора не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
значение типа Option, содержащее первый элемент в коллекторе, удовлетворяющий
p, илиNone, если он не существует.
- Definition Classes
- TraversableProxyLike → TraversableLike → TraversableOnce → GenTraversableOnce
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Traversable[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 => 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, к каждому элементу этого коллектора и конкатенации результатов.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike → FilterMonadic
def flatten[B]: Traversable[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
новый коллектор, полученный путём конкатенации всех коллекторов элементов.
- Definition Classes
- GenericTraversableTemplate
def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1
Складывает элементы этого итерируемого объекта или итератора с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не будет завершаться для коллекций бесконечного размера.
- A1
тип параметра для бинарного оператора, супертип
A.- z
нейтральный элемент для операции свёртки; может быть добавлен к результату любое количество раз, и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора свёртки
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
- TraversableProxyLike → 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
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def forall(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этой коллекции.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
true, если эта коллекция пустая или заданный предикатpвыполняется для всех элементов этой коллекции, в противном случаеfalse.
- Definition Classes
- TraversableProxyLike → TraversableLike → TraversableOnce → GenTraversableOnce
def foreach(f: (A) ⇒ Unit): Unit
Применяет функцию f ко всем элементам этой коллекции.
Примечание: этот метод лежит в основе реализации большинства других операций обработки. Важно реализовать этот метод эффективным способом.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fигнорируется.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой. Строки формата такие же, как для String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавляется с помощью неявного преобразования из TraversableProxy[A] в StringFormat[TraversableProxy[A]] выполненного методом StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
def genericBuilder[B]: Builder[B, Traversable[B]]
Универсальный билдер, который строит экземпляры Traversable для произвольных типов элементов.
- Definition Classes
- GenericTraversableTemplate
final def getClass(): Class[_]
Возвращает представление класса во время выполнения для объекта.
- returns
объект класса, соответствующий типу получателя во время выполнения.
def groupBy[K](f: (A) ⇒ K): immutable.Map[K, Traversable[A]]
Разделяет эту коллекцию traversable на карту коллекций traversable в соответствии с функцией-дискриминатором.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда будет принудительно вычислять представление и возвращать новую коллекцию traversable.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- returns
-
Карта из ключей в коллекции traversable, для которой выполняется следующее инвариантное свойство:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kсвязан с коллекцией traversable из тех элементовx, для которыхf(x)равноk.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def hasDefiniteSize: Boolean
Проверяет, известно ли, что эта коллекция traversable имеет конечный размер. Все строгие коллекции имеют известный конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true, если все элементы были вычислены. Он возвращает false, если поток ещё не был вычислен до конца. Непустые итераторы обычно возвращают false, даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечных размеров. Типичный режим сбоя — бесконечный цикл. Эти методы всегда пытаются выполнить обход, не проверяя предварительно, что hasDefiniteSize возвращает true. Однако, проверка hasDefiniteSize может гарантировать, что размер определён и бесконечная итерация не является проблемой.
- returns
true, если для этой коллекции известен конечный размер,falseв противном случае.
- Definition Classes
- TraversableProxyLike → TraversableLike → TraversableOnce → GenTraversableOnce
def hashCode(): Int
Вычисляет значение хэш-кода для объекта.
Алгоритм хэширования по умолчанию зависит от платформы.
Следует учитывать, что для двух объектов могут быть идентичны хэш-коды (o1.hashCode.equals(o2.hashCode)), но они могут не быть равны (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако, требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true), то у них должны быть идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому, при переопределении этого метода, необходимо убедиться, что поведение согласуется с методом equals.
- returns
значение хэш-кода для этого объекта.
def head: A
Выбирает первый элемент этой коллекции traversable.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
- returns
первый элемент этой коллекции traversable.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementException, если коллекция traversable пуста.
def headOption: Option[A]
Возвращает опционально первый элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
- returns
первый элемент этой коллекции traversable, если она не пуста,
None, если она пуста.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def init: Traversable[A]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
- returns
коллекция traversable, содержащая все элементы этой коллекции traversable, за исключением последнего.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
- Exceptions thrown
UnsupportedOperationException, если коллекция traversable пуста.
def inits: Iterator[Traversable[A]]
Итерирует по начальным частям (inits) этой коллекции traversable. Первое значение будет этой коллекцией traversable, а последнее — пустой коллекцией traversable, а промежуточные значения — результаты последовательных применений init.
- returns
итератор по всем начальным частям (inits) этой коллекции traversable
- Definition Classes
- TraversableLike
List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)
def isEmpty: Boolean
Проверяет, является ли эта коллекция итерируемых элементов пустой.
- returns
true, если коллекция итерируемых элементов пуста,falseв противном случае.
- Definition Classes
- TraversableProxyLike → TraversableLike → TraversableOnce → GenTraversableOnce
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип объекта-получателя T0.
Обратите внимание, что результат проверки производится с учётом семантики стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, поскольку аргумент типа стирается во время компиляции, проверить, содержат ли элементы списка указанный тип невозможно.
- returns
true, если объект-получатель является экземпляром стираемого типаT0;falseв противном случае.
- Definition Classes
- Any
final def isTraversableAgain: Boolean
Проверяет, может ли эта коллекция итерируемых элементов быть многократно пройдена.
- returns
true
- Definition Classes
- TraversableLike → GenTraversableLike → GenTraversableOnce
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
Последний элемент этой коллекции итерируемых элементов.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementExceptionЕсли коллекция итерируемых элементов пуста.
def lastOption: Option[A]
Возвращает последний элемент, если он есть.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
последний элемент этой коллекции итерируемых элементов, если она не пуста,
None, если она пуста.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def map[B](f: (A) ⇒ B): Traversable[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этой коллекции.
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новая коллекция, полученная путём применения заданной функции
fк каждому элементу этой коллекции и сбора результатов.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike → FilterMonadic
def max: A
Находит наибольший элемент.
- returns
наибольший элемент этой коллекции.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли эта коллекция пуста.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этой коллекции с наибольшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли эта коллекция пуста.
def min: A
Находит наименьший элемент.
- returns
наименьший элемент этой коллекции.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли эта коллекция пуста.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этой коллекции с наименьшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если эта коллекция пуста.
def mkString: String
Отображает все элементы этой коллекции в строку.
- returns
строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода
toString) всех элементов этой коллекции следуют друг за другом без разделителя.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этой коллекции в строку с использованием разделителя.
- sep
разделитель.
- returns
строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода
toString) всех элементов этой коллекции разделены строкойsep.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этой коллекции в строку с использованием начальной, конечной и разделительной строк.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковое представление этой коллекции. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (относительно методаtoString) всех элементов этой коллекции разделены строкойsep.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- returns
true, если аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def newBuilder: Builder[A, Traversable[A]]
Построитель, который создает экземпляры типа Traversable[A]
- Attributes
- protected[this]
- Definition Classes
- GenericTraversableTemplate → HasNewBuilder
def nonEmpty: Boolean
Проверяет, не пуста ли коллекция.
- returns
true, если коллекция содержит хотя бы один элемент,falseв противном случае.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуждает единственную нить, ожидающую монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Примечание
не указано SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все нити, ожидающие монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Примечание
не указано SLS как член AnyRef
def par: ParIterable[A]
Возвращает параллельную реализацию этого набора.
Для большинства типов наборов этот метод создает новый параллельный набор, копируя все элементы. Для этих наборов, par занимает линейное время. Изменяемые наборы в этой категории не создают изменяемый параллельный набор, который имеет тот же базовый набор данных, поэтому изменения в одном наборе не будут отражаться в другом.
Конкретные наборы (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельный набор, который использует тот же базовый набор данных. Для этих наборов, par занимает постоянное или сублинейное время.
Все параллельные наборы возвращают ссылку на себя.
- returns
параллельная реализация этого набора
- Definition Classes
- Parallelizable
def parCombiner: Combiner[A, ParIterable[A]]
Реализация par по умолчанию использует комбиниратор, предоставленный этим методом, для создания нового параллельного набора.
- returns
комбинировщик для параллельного набора типа
ParRepr
- Attributes
- protected[this]
- Definition Classes
- TraversableLike → Parallelizable
def partition(p: (A) ⇒ Boolean): (Traversable[A], Traversable[A])
Разделяет этот набор итерируемых элементов на два набора итерируемых элементов в соответствии с предикатом.
- p
предикат для разделения.
- returns
пара наборов итерируемых элементов: первый набор итерируемых элементов содержит все элементы, удовлетворяющие предикату
p, а второй набор итерируемых элементов содержит все элементы, которые не удовлетворяют ему. Относительный порядок элементов в результирующих наборах итерируемых элементов такой же, как и в исходном наборе итерируемых элементов.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def product: A
Вычисляет произведение элементов этого набора.
- returns
произведение всех элементов этого набора чисел типа
Int. ВместоInt, можно использовать любой другой типTс неявнымNumeric[T]реализацией в качестве типа элементов набора и как типа результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1
Применяет указанную ассоциативную бинарную операцию ко всем элементам этого итерируемого набора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Параметр типа для бинарной операции, тип-надмножество
A.- op
Бинарная операция, которая должна быть ассоциативной.
- returns
Результат применения оператора reduce
opмежду всеми элементами, если набор итерируемых элементов не пустой.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот набор итерируемых элементов пустой.
def reduceLeft[B >: A](op: (B, A) ⇒ B): B
Применяет бинарную операцию ко всем элементам этого набора итерируемых элементов слева направо.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может вернуть разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарной операции.
- op
бинарная операция.
- returns
-
результат вставки
opмежду последовательными элементами этого набора итерируемых элементов слева направо:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)где
x1, ..., xn- элементы этого набора итерируемых элементов.
- Definition Classes
- TraversableProxyLike → TraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли этот набор итерируемых элементов пустой.
def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
Возможно применяет бинарную операцию ко всем элементам этого набора итерируемых элементов слева направо.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может вернуть разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарной операции.
- op
бинарная операция.
- returns
значение Option, содержащее результат
reduceLeft(op), если этот набор итерируемых элементов не пустой,Noneв противном случае.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]
Сводит элементы этого итерируемого объекта, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
- A1
Тип параметра для бинарного оператора, надтипом
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Значение типа Option, содержащее результат применения оператора сводки
opко всем элементам, если коллекция не пуста, иNoneв противном случае.
- Definition Classes
- 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- элементы этой коллекции итерируемых объектов.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если эта коллекция итерируемых объектов пуста.
def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
При необходимости применяет бинарный оператор ко всем элементам этой коллекции итерируемых объектов, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен, или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение типа Option, содержащее результат
reduceRight(op), если эта коллекция итерируемых объектов не пуста,Noneв противном случае.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def repr: Traversable[A]
Коллекция типа коллекция итерируемых объектов, лежащая в основе этого TraversableLike объекта. По умолчанию это реализуется как сам TraversableLike объект, но это можно переопределить.
- Definition Classes
- TraversableLike → GenTraversableLike
def reversed: List[A]
- Attributes
- protected[this]
- Definition Classes
- TraversableOnce
def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[Traversable[A], B, That]): That
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
- B
тип элементов результирующей коллекции
- That
тип результирующей коллекции
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- cbf
фабрика комбинирования, которая предоставляет комбинировщик
- returns
новая коллекция итерируемых объектов, содержащая префиксное сканирование элементов в этой коллекции итерируемых объектов
- Definition Classes
- TraversableLike → GenTraversableLike
def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def seq: Traversable[A]
Версия этой коллекции со всеми операциями, реализованными последовательно (т.е. в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределён для возвращения последовательной реализации этой коллекции. В обоих случаях сложность — O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce
def size: Int
Размер этой коллекций перебираемых элементов.
Примечание: не завершится для коллекций бесконечного размера.
- returns
количество элементов в этой коллекции перебираемых элементов.
- Definition Classes
- TraversableProxyLike → GenTraversableLike → TraversableOnce → GenTraversableOnce
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если его можно вычислить без больших затрат.
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер не может быть определён без больших затрат
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(from: Int, until: Int): Traversable[A]
Выбирает интервал элементов. Возвращаемая коллекция состоит из всех элементов x, удовлетворяющих инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
коллекция, содержащая элементы с индексом не меньше, чем
fromи строго меньше, чемuntilиз этой коллекции перебираемых элементов.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def span(p: (A) ⇒ Boolean): (Traversable[A], Traversable[A])
Разделяет эту коллекцию перебираемых элементов на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не приводит к побочным эффектам.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
пара, состоящая из самого длинного префикса этой коллекции перебираемых элементов, чьи элементы все удовлетворяют условию
p, и остальной части этой коллекции перебираемых элементов.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def splitAt(n: Int): (Traversable[A], Traversable[A])
Разделяет эту последовательность на две части по заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
позиция, по которой необходимо разделить.
- returns
пара последовательностей, состоящая из первых
nэлементов этой последовательности и остальных элементов.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def stringPrefix: String
Определяет префикс представления этого объекта в строковом формате.
- returns
строковое представление, которое начинается с результата
toString, применённого к этой последовательности. По умолчанию префикс строки — простое имя класса коллекции — последовательность.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def sum: A
Вычисляет сумму элементов этой коллекции.
- returns
сумма всех элементов в этой коллекции чисел типа
Int. ВместоInt, можно использовать любой другой типTс неявнымNumeric[T]реализацией в качестве типа элементов коллекции и результатаsum. Примерами таких типов являются:Long,Float,Double,BigInt.
- Definition Classes
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
def tail: Traversable[A]
Возвращает все элементы, кроме первого.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
последовательность, состоящая из всех элементов этой последовательности, кроме первого.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
- Исключения
java.lang.UnsupportedOperationException, если последовательность пуста.
def tails: Iterator[Traversable[A]]
Итерирует по хвостам этой последовательности. Первое значение будет этой последовательностью, а последнее — пустой последовательностью. Промежуточные значения — результаты последовательных применений tail.
- returns
итератор по всем хвостам этой последовательности
- Definition Classes
- TraversableLike
List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)
def take(n: Int): Traversable[A]
Выбирает первые n элементов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов для взятия из этой последовательности.
- returns
последовательность, содержащая только первые
nэлементов этой последовательности или всю последовательность, если в ней меньшеnэлементов. Еслиnотрицательно, возвращает пустую последовательность.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def takeWhile(p: (A) ⇒ Boolean): Traversable[A]
Берет самую длинную префиксную часть элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
самую длинную префиксную часть этой последовательности, все элементы которой удовлетворяют предикату
p.
- Definition Classes
- TraversableProxyLike → TraversableLike → GenTraversableLike
def thisCollection: Traversable[A]
Базовая коллекция, рассматриваемая как экземпляр Traversable. По умолчанию это сам объект коллекции, но это можно переопределить.
- Атрибуты
- protected[this]
- Definition Classes
- TraversableLike
def to[Col[_]]: Col[A]
Преобразует эту коллекцию в другую, копируя все элементы.
Примечание: не завершит работу для коллекций бесконечного размера.
- Col
Тип коллекции для построения.
- возвращает
новая коллекция, содержащая все элементы этой коллекции.
- Классы определений
- TraversableLike → TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует эту коллекцию в массив.
Примечание: не завершит работу для коллекций бесконечного размера.
- возвращает
массив, содержащий все элементы этой коллекции. Должен быть доступен
ClassTagдля типа элемента этой коллекции.
- Классы определений
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def toBuffer[B >: A]: Buffer[B]
Использует содержимое этой коллекции Traversable для создания нового изменяемого буфера.
Примечание: не завершит работу для коллекций бесконечного размера.
- возвращает
буфер, содержащий все элементы этой коллекции Traversable.
- Классы определений
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def toCollection(repr: Traversable[A]): Traversable[A]
Преобразование из коллекций типа Repr в объекты Traversable. По умолчанию это реализуется просто как приведение типа, но это можно переопределить.
- Атрибуты
- protected[this]
- Классы определений
- TraversableLike
def toIndexedSeq: immutable.IndexedSeq[A]
Преобразует эту коллекцию Traversable в индексированную последовательность.
Примечание: не завершит работу для коллекций бесконечного размера.
- возвращает
индексированная последовательность, содержащая все элементы этой коллекции Traversable.
- Классы определений
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def toIterable: Iterable[A]
Преобразует эту коллекцию Traversable в итерируемую коллекцию. Обратите внимание, что выбор целевого Iterable является ленивым в этой реализации по умолчанию, так как этот TraversableOnce может быть ленивым и невычисленным (т.е. это может быть итератор, который доступен только один раз).
Примечание: не завершит работу для коллекций бесконечного размера.
- возвращает
Iterable, содержащий все элементы этой коллекции Traversable.
- Классы определений
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def toIterator: Iterator[A]
Возвращает итератор по элементам в этой коллекции Traversable. Вернёт тот же итератор, если этот экземпляр уже является итератором.
Примечание: не завершит работу для коллекций бесконечного размера.
- возвращает
итератор, содержащий все элементы этой коллекции Traversable.
- Классы определений
- TraversableProxyLike → TraversableLike → GenTraversableOnce
def toList: List[A]
Преобразует эту коллекцию Traversable в список.
Примечание: не завершит работу для коллекций бесконечного размера.
- возвращает
список, содержащий все элементы этой коллекции Traversable.
- Классы определений
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def toMap[T, U]: Map[T, U]
Преобразует эту коллекцию в карту. Этот метод недоступен, если элементы не являются членами Tuple2, при этом каждый ((T, U)) становится парой ключ-значение в карте. Повторяющиеся ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, какой ключ находится в результирующей карте, не определено.
Примечание: не завершит работу для коллекций бесконечного размера.
- возвращает
карта типа
immutable.Map[T, U], содержащая все пары ключ/значение типа(T, U)этой коллекции.
- Классы определений
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def toParArray: ParArray[T]
- Неявный
- Этот член добавлен неявно посредством преобразования из TraversableProxy[A] в CollectionsHaveToParArray[TraversableProxy[A], T] методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование выполнится только если неявное значение типа (TraversableProxy[A]) ⇒ GenTraversableOnce[T] находится в области видимости.
- Классы определения
- CollectionsHaveToParArray
def toSeq: Seq[A]
Преобразует это итерируемое множество в последовательность. Как и toIterable, в этом стандартном варианте он ленивый, так как этот TraversableOnce может быть ленивым и не вычисленным.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
последовательность, содержащую все элементы этого итерируемого множества.
- Классы определения
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def toSet[B >: A]: immutable.Set[B]
Преобразует это итерируемое множество в множество.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
множество, содержащее все элементы этого итерируемого множества.
- Классы определения
- TraversableProxyLike → TraversableOnce → GenTraversableOnce
def toStream: Stream[A]
Преобразует это итерируемое множество в поток.
- возвращает
поток, содержащий все элементы этого итерируемого множества.
- Классы определения
- TraversableProxyLike → TraversableLike → GenTraversableOnce
def toString(): String
Возвращает строковое представление объекта.
Стандартное представление зависит от платформы.
- возвращает
строковое представление объекта.
def toTraversable: Traversable[A]
Преобразует это итерируемое множество в неопределённое итерируемое множество. Возвратит ту же коллекцию, если этот экземпляр уже является итерируемым множеством.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
итерируемое множество, содержащее все элементы этого итерируемого множества.
- Классы определения
- TraversableProxyLike → TraversableLike → TraversableOnce → GenTraversableOnce
def toVector: Vector[A]
Преобразует это итерируемое или итератор в вектор.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
вектор, содержащий все элементы этого итерируемого или итератора.
- Классы определения
- TraversableOnce → GenTraversableOnce
def transpose[B](implicit asTraversable: (A) ⇒ GenTraversableOnce[B]): Traversable[Traversable[B]]
Транспонирует это множество итерируемых множеств в множество множеств.
Тип результирующего множества будет определён статическим типом множества. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
- B
тип элементов каждого итерируемого множества.
- asTraversable
неявное преобразование, которое утверждает, что тип элементов этого множества является
Traversable.- возвращает
двумерное множество множеств, где n-я строка — это n-й столбец этого множества.
- Классы определения
- GenericTraversableTemplate
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.9.0)
transposeвыбрасываетIllegalArgumentExceptionесли множества не имеют одинаковую размерность.- Исключения
IllegalArgumentExceptionесли все множества в этом множестве не имеют одинаковую размерность.
def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (Traversable[A1], Traversable[A2])
Преобразует это множество пар в два множества первой и второй половины каждой пары.
val xs = Traversable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three))
- A1
тип первой половины пар элементов
- A2
тип второй половины пар элементов
- asPair
явное преобразование, которое утверждает, что тип элементов этого множества — пара.
- returns
пара множеств, содержащих первую и, соответственно, вторую половину каждой пары элементов этого множества.
- Definition Classes
- GenericTraversableTemplate
def unzip3[A1, A2, A3](implicit asTriple: (A) ⇒ (A1, A2, A3)): (Traversable[A1], Traversable[A2], Traversable[A3])
Преобразует это множество троек в три множества первого, второго и третьего элемента каждой тройки.
val xs = Traversable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three),
// Traversable(1, 2, 3))
- A1
тип первого элемента троек элементов
- A2
тип второго элемента троек элементов
- A3
тип третьего элемента троек элементов
- asTriple
явное преобразование, которое утверждает, что тип элементов этого множества — тройка.
- returns
тройку множеств, содержащих первый, второй и, соответственно, третий член каждой тройки элементов этого множества.
- Definition Classes
- GenericTraversableTemplate
def view(from: Int, until: Int): TraversableView[A, Traversable[A]]
Создает нестрогую просмотр фрагмента этого коллекционного объекта.
Примечание: разница между view и slice заключается в том, что view создает просмотр текущего коллекционного объекта, а slice создает новый коллекционный объект.
Примечание: view(from, to) эквивалентно view.slice(from, to)
Примечание: может возвращать разные результаты при разных запусках, если тип базового коллекционного объекта не упорядочен.
- from
индекс первого элемента просмотра
- until
индекс элемента, следующего за просмотром
- returns
нестрогая просмотр фрагмента этого коллекционного объекта, начинающегося с индекса
fromи оканчивающегося до (но не включая) индексuntil.
- Definition Classes
- TraversableProxyLike → TraversableLike
def view: TraversableView[A, Traversable[A]]
Создает нестрогую просмотр этого коллекционного объекта.
- returns
нестрогая просмотр этого коллекционного объекта.
- Definition Classes
- TraversableProxyLike → TraversableLike
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
def withFilter(p: (A) ⇒ Boolean): FilterMonadic[A, Traversable[A]]
Создает нестрогую фильтрацию этого коллекционного объекта.
Примечание: разница между c filter p и c withFilter p заключается в том, что первый создает новый коллекционный объект, а второй только ограничивает область действия последующих map, flatMap, foreach и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если тип базового коллекционного объекта не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
объект класса
WithFilter, который поддерживает операцииmap,flatMap,foreachиwithFilter. Все эти операции применяются к тем элементам этого коллекционного объекта, которые удовлетворяют предикатуp.
- Definition Classes
- TraversableLike → FilterMonadic
def →[B](y: B): (TraversableProxy[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в ArrowAssoc[TraversableProxy[A]] с помощью метода ArrowAssoc в scala.Predef.
- Классы определения
- ArrowAssoc
Затенённые неявные члены значения
def filter(p: (A) ⇒ Boolean): TraversableOnce[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенено одним или несколькими членами в этом классе.
Для доступа к этому члену вы можете использовать привязку типа:(traversableProxy: MonadOps[A]).filter(p)
- Классы определения
- MonadOps
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенено одним или несколькими членами в этом классе.
Для доступа к этому члену вы можете использовать привязку типа:(traversableProxy: MonadOps[A]).flatMap(f)
- Классы определения
- MonadOps
def map[B](f: (A) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенено одним или несколькими членами в этом классе.
Для доступа к этому члену вы можете использовать привязку типа:(traversableProxy: MonadOps[A]).map(f)
- Классы определения
- MonadOps
def withFilter(p: (A) ⇒ Boolean): Iterator[A]
- Неявный
- Этот член добавлен неявным преобразованием из TraversableProxy[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенено одним или несколькими членами в этом классе.
Для доступа к этому члену вы можете использовать привязку типа:(traversableProxy: MonadOps[A]).withFilter(p)
- Классы определения
- MonadOps
© 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/TraversableProxy.html
Этот трейт реализует прокси для объектов traversable. Он перенаправляет все вызовы на другой объект traversable.
(Начиная с версии 2.11.3) Проксирование устарело из-за отсутствия использования и поддержки на уровне компилятора
2.8