Класс scala.collection.AbstractTraversable
абстрактный класс AbstractTraversable[+A] extends Traversable[A]
Конструкторы экземпляров
новый AbstractTraversable()
Типовые члены
тип Self = Traversable[A]
Тип, реализующий этот обход
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableLike
класс WithFilter extends FilterMonadic[A, Repr]
Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.
- Определяющие классы
- TraversableLike
Члены-значения
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
trueесли !(this == that), в противном случае false.
- Определяющие классы
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает хеш-значение, согласованное с равенством по значению: если две сущности типа значения сравниваются как true, то ## выведет одинаковое хеш-значение для каждой из них. Для null возвращает хеш-код, где null.hashCode генерирует NullPointerException.
- возвращает
хеш-значение, согласованное с ==
- Определяющие классы
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен с помощью неявного преобразования из AbstractTraversable[A] в any2stringadd[AbstractTraversable[A]] с помощью метода any2stringadd в scala.Predef.
- Определяющие классы
- any2stringadd
def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов возвращаемой коллекции — это самый специфичный суперкласс, охватывающий типы элементов двух операндов.
- B
тип элемента возвращаемой коллекции.
- That
класс возвращаемой коллекции. Там, где возможно,
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, допустим ли тип элементаBдля этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
присоединяемая коллекция.
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatпо текущему типу представленияReprи новому типу элементаB.- возвращает
новая коллекция типа
That, содержащая все элементы этой коллекции, за которыми следуют все элементыthat.
- Определяющие классы
- 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
присоединяемая коллекция.
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatпо текущему типу представленияReprи новому типу элементаB.- возвращает
новая коллекция типа
That, содержащая все элементы этой коллекции, за которыми следуют все элементыthat.
- Определяющие классы
- 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
присоединяемая коллекция.
- возвращает
новая коллекция, содержащая все элементы этой коллекции, за которыми следуют все элементы
that.
- Определяющие классы
- TraversableLike
def ->[B](y: B): (AbstractTraversable[A], B)
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в ArrowAssoc[AbstractTraversable[A]] с помощью метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @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
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого перечислимого объекта или итератора слева направо с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn— это элементы этого перечислимого объекта или итератора.
- Definition Classes
- 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
бинарный оператор
- returns
-
результат вставки
opмежду последовательными элементами этого перечислимого объекта или итератора справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— это элементы этого перечислимого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- returns
true, если объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def addString(b: StringBuilder): StringBuilder
Добавляет все элементы этого перечислимого объекта или итератора в строковый буфер. Записанный текст состоит из строковых представлений (согласно методу toString) всех элементов этого перечислимого объекта или итератора без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
- b
строковый буфер, в который добавляются элементы.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
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, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
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, в который были добавлены элементы.
- Definition Classes
- 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
- Исключения
ClassCastException, если объект-получатель не является экземпляром стирания типаT0.
def clone(): AnyRef
Создает копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия объекта-получателя.
def collect[B](pf: PartialFunction[A, B]): Traversable[B]
Создает новую коллекцию, применяя частичную функцию ко всем элементам этой коллекции, для которых функция определена.
- B
тип элементов возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и преобразует коллекцию.
- returns
новая коллекция, полученная путем применения данной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- 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.)
- Definition Classes
- Traversable → GenTraversable → GenericTraversableTemplate
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этой коллекции в массив. Заполняет данный массив xs не более чем len элементами этой коллекции, начиная с позиции start. Копирование остановится, как только будет достигнут конец текущей коллекции, или конец целевого массива, или len элементов будут скопированы.
Примечание: не завершится для коллекций бесконечного размера.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество копируемых элементов.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
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
def copyToBuffer[B >: A](dest: Buffer[B]): Unit
Копирует все элементы этой коллекции или итератора в буфер.
Примечание: не завершится для коллекций бесконечного размера.
- dest
Буфер, в который копируются элементы.
- Definition Classes
- TraversableOnce
def count(p: (A) ⇒ Boolean): Int
Подсчитывает количество элементов в коллекции или итераторе, удовлетворяющих предикату.
- p
предикат для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def drop(n: Int): Traversable[A]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов, которые нужно удалить из этой коллекции.
- returns
коллекция, содержащая все элементы этой коллекции, кроме первых
nэлементов, или пустая коллекция, если в этой коллекции меньшеnэлементов. Еслиnотрицательное, то не удалять элементы.
- Definition Classes
- TraversableLike → GenTraversableLike
def dropWhile(p: (A) ⇒ Boolean): Traversable[A]
Удаляет самую длинную префиксную часть элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
самый длинный суффикс этой коллекции, первый элемент которого не удовлетворяет предикату
p.
- Definition Classes
- TraversableLike → GenTraversableLike
def ensuring(cond: (AbstractTraversable[A]) ⇒ Boolean, msg: ⇒ Any): AbstractTraversable[A]
- Неявный
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в Ensuring[AbstractTraversable[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (AbstractTraversable[A]) ⇒ Boolean): AbstractTraversable[A]
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в Ensuring[AbstractTraversable[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): AbstractTraversable[A]
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в Ensuring[AbstractTraversable[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): AbstractTraversable[A]
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в Ensuring[AbstractTraversable[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- 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).
- returns
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def equals(arg0: Any): Boolean
Метод равенства для ссылочных типов. Реализация по умолчанию делегирует вызов методу eq.
См. также equals в scala.Any.
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def exists(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для хотя бы одного элемента в этом итерируемом наборе.
Примечание: для бесконечных наборов может не завершиться.
- p
предикат, используемый для проверки элементов.
- returns
falseесли этот итерируемый набор пуст, иначеtrueесли заданный предикатpвыполняется для некоторых элементов этого итерируемого набора, иначеfalse
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
def filter(p: (A) ⇒ Boolean): Traversable[A]
Выбирает все элементы этого итерируемого набора, удовлетворяющие предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый итерируемый набор, состоящий из всех элементов этого итерируемого набора, удовлетворяющих заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def filterNot(p: (A) ⇒ Boolean): Traversable[A]
Выбирает все элементы этого итерируемого набора, которые не удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый итерируемый набор, состоящий из всех элементов этого итерируемого набора, которые не удовлетворяют заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- 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
- 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
- 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
- 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
def forall(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этой перебираемой коллекции.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
true, если эта перебираемая коллекция пуста или данный предикатpвыполняется для всех элементов этой перебираемой коллекции, в противном случаеfalse.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
abstract def foreach(f: (A) ⇒ Unit): Unit
- f
функция, которая применяется для своего побочного эффекта к каждому элементу. Результат функции
fотбрасывается.
- Definition Classes
- GenericTraversableTemplate
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с данной строкой format. Строки формата такие же, как для String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в StringFormat[AbstractTraversable[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]]
Разделяет эту перебираемую коллекцию на карту перебираемых коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда принудительно переносит представление и возвращает новую перебираемую коллекцию.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- returns
-
Карта из ключей к перебираемым коллекциям, такая, что выполняется следующее инвариантное условие:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kсвязан с перебираемой коллекцией тех элементовx, для которыхf(x)равноk.
- Definition Classes
- TraversableLike → GenTraversableLike
def hasDefiniteSize: Boolean
Проверяет, известно ли, что эта перебираемая коллекция имеет конечный размер. Все строгие коллекции известны как имеющие конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true, если все элементы были вычислены. Он возвращает false, если поток еще не вычислен до конца. Непустые итераторы обычно возвращают false, даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечного размера. Типичная ошибка — бесконечный цикл. Эти методы всегда пытаются выполнить перебор, не проверяя предварительно, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер определен и бесконечное выполнение не является проблемой.
- returns
true, если известно, что у этой коллекции конечный размер,falseв противном случае.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- возвращает
значение хэш-кода для этого объекта.
def head: A
Выбирает первый элемент этого итерируемого набора.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- возвращает
первый элемент этого итерируемого набора.
- Определяющие классы
- TraversableLike → GenTraversableLike
- Исключения
NoSuchElementException, если итерируемый набор пустой.
def headOption: Option[A]
Выбирает первый элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- возвращает
первый элемент этого итерируемого набора, если он не пустой,
Noneесли он пустой.
- Определяющие классы
- TraversableLike → GenTraversableLike
def init: Traversable[A]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- возвращает
итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме последнего.
- Определяющие классы
- TraversableLike → GenTraversableLike
- Исключения
UnsupportedOperationException, если итерируемый набор пустой.
def inits: Iterator[Traversable[A]]
Итерируется по начальным частям (inits) этого итерируемого набора. Первое значение будет равно этому итерируемому набору, а последнее — пустому итерируемому набору; промежуточные значения — результаты последовательных применений init.
- возвращает
итератор по всем начальным частям (inits) этого итерируемого набора
- Определяющие классы
- TraversableLike
List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)
def isEmpty: Boolean
Проверяет, пуст ли этот итерируемый набор.
- возвращает
true, если итерируемый набор не содержит элементов,falseв противном случае.
- Определяющие классы
- TraversableLike → TraversableOnce → GenTraversableOnce
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип объекта-приемника T0.
Обратите внимание, что результат проверки определяется семантикой стирания Scala. Следовательно, выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, из-за стирания типа аргумента во время компиляции, невозможно проверить, относятся ли элементы списка к указанному типу.
- возвращает
true, если объект-приемник является экземпляром стирания типаT0;falseв противном случае.
- Определяющие классы
- Any
final def isTraversableAgain: Boolean
Проверяет, можно ли многократно пройти по этому итерируемому набору.
- возвращает
true
- Определяющие классы
- TraversableLike → GenTraversableLike → GenTraversableOnce
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- возвращает
Последний элемент этого итерируемого набора.
- Определяющие классы
- TraversableLike → GenTraversableLike
- Исключения
NoSuchElementException, если итерируемый набор пустой.
def lastOption: Option[A]
Выбирает последний элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- возвращает
последний элемент этого итерируемого набора, если он не пустой,
Noneесли он пустой.
- Определяющие классы
- TraversableLike → GenTraversableLike
def map[B](f: (A) ⇒ B): Traversable[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этой коллекции.
- B
тип элемента возвращаемой коллекции.
- f
функция, которая должна быть применена к каждому элементу.
- возвращает
новая коллекция, полученная в результате применения заданной функции
fк каждому элементу этой коллекции и сбора результатов.
- Определяющие классы
- TraversableLike → GenTraversableLike → FilterMonadic
def max: A
Находит наибольший элемент.
- возвращает
наибольший элемент этой коллекции.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли эта коллекция пустая.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этой коллекции с наибольшим значением, измеренным функцией f.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли эта коллекция пустая.
def min: A
Находит наименьший элемент.
- возвращает
наименьший элемент этой коллекции
- Определяющие классы
- 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)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Определяющие классы
- AnyRef
def newBuilder: Builder[A, Traversable[A]]
Библиотека, которая строит экземпляры типа Traversable[A]
- Attributes
- protected[this]
- Definition Classes
- GenericTraversableTemplate → HasNewBuilder
def nonEmpty: Boolean
Проверяет, пусто ли данное множество или итератор.
- returns
true, если множество или итератор содержит хотя бы один элемент, false — в противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуживает один поток, ждущий монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано в SLS как член AnyRef
final def notifyAll(): Unit
Разбуживает все потоки, ждущие монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано в SLS как член AnyRef
def par: ParIterable[A]
Возвращает параллельную реализацию этого набора.
Для большинства типов наборов этот метод создает новый параллельный набор, копируя все элементы. Для таких наборов, это занимает линейное время. Изменяемые наборы в этой категории не создают изменяемый параллельный набор с тем же базовым набором данных, поэтому изменения в одном наборе не будут отражены в другом.
Некоторые наборы (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельный набор, который использует тот же базовый набор данных. Для этих наборов это занимает постоянное или подлинейное время.
Все параллельные наборы возвращают ссылку на себя.
- returns
параллельная реализация этого набора
- Definition Classes
- Parallelizable
def parCombiner: Combiner[A, ParIterable[A]]
Реализация комбинатора по умолчанию использует комбинатор, предоставляемый этим методом, для создания нового параллельного набора.
- returns
комбинатор для параллельного набора типа
ParRepr
- Attributes
- protected[this]
- Definition Classes
- TraversableLike → Parallelizable
def partition(p: (A) ⇒ Boolean): (Traversable[A], Traversable[A])
Разделяет этот набор на два набора в соответствии с предикатом.
- p
предикат для разделения.
- returns
пара наборов: первый набор состоит из всех элементов, которые удовлетворяют предикату, а второй — из всех элементов, которые не удовлетворяют. Относительный порядок элементов в результирующих наборах такой же, как в исходном наборе.
- Definition Classes
- TraversableLike → GenTraversableLike
def product: A
Вычисляет произведение элементов этого набора.
- returns
произведение всех элементов в этом наборе числового типа
Int. ВместоInt, может использоваться любой другой типTс неявной реализациейNumeric[T]в качестве типа элементов набора и типа результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1
Применяет заданный ассоциативный бинарный оператор к элементам этого множества.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Параметр типа для бинарного оператора, являющийся супертипом
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce к всем элементам, если множество или итератор непустые.
- 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
- TraversableOnce
- Exceptions thrown
UnsupportedOperationException, если этот обход или итератор пуст.
def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
При необходимости применяет бинарный оператор ко всем элементам этого обхода или итератора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции, лежащей в основе, не упорядочен или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение Option, содержащее результат
reduceLeft(op)если этот обход или итератор не пустой,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]
Уменьшает элементы этого обхода или итератора, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
параметр типа для бинарного оператора, надтип
A.- op
бинарный оператор, который должен быть ассоциативным.
- returns
значение Option, содержащее результат применения оператора reduce
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
- TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если этот обход или итератор пуст.
def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
При необходимости применяет бинарный оператор ко всем элементам этого обхода или итератора справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции, лежащей в основе, не упорядочен или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение Option, содержащее результат
reduceRight(op)если этот обход или итератор не пустой,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def repr: Traversable[A]
Коллекция типа traversable collection, лежащая в основе этого 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
- 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
- TraversableLike → GenTraversableLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0) Поведение
scanRightизменилось. Предыдущее поведение можно воспроизвести с помощью scanRight.reverse.
def seq: Traversable[A]
Вариант этой коллекции со всеми операциями, реализованными последовательно (т.е. в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределен для возврата последовательной реализации этой коллекции. В обоих случаях его сложность O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce
def size: Int
Размер этой коллекции или итератора.
Примечание: не завершится для коллекций бесконечного размера.
- returns
количество элементов в этой коллекции или итераторе.
- Definition Classes
- 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
коллекция типа traversable, содержащая элементы, большие или равные индексу
from, и заканчивающаяся (но не включая) индексомuntilэтой traversable коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
def span(p: (A) ⇒ Boolean): (Traversable[A], Traversable[A])
Разделяет эту traversable коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно), чем (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
пара, состоящая из самого длинного префикса этой traversable коллекции, элементы которого удовлетворяют
p, и остальной части этой traversable коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
def splitAt(n: Int): (Traversable[A], Traversable[A])
Разделяет эту traversable коллекцию на две части в заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно), чем (c take n, c drop n).
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
позиция, по которой необходимо разделить.
- returns
пара коллекций типа traversable, состоящая из первых
nэлементов этой traversable коллекции и других элементов.
- Definition Classes
- TraversableLike → GenTraversableLike
def stringPrefix: String
Определяет префикс представления этого объекта.
- returns
строковое представление, которое начинается с результата
toString, применённого к этой traversable коллекции. По умолчанию префикс строки — простое имя класса коллекции traversable.
- Definition Classes
- TraversableLike → GenTraversableLike
def sum: A
Суммирует элементы этой коллекции.
- returns
сумму всех элементов в этой коллекции чисел типа
Int. ВместоInt, любой другой типTс неявнымNumeric[T]реализацией может использоваться в качестве типа элементов коллекции и в качестве типа возвращаемого значенияsum. Примерами таких типов являются:Long,Float,Double,BigInt.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
def tail: Traversable[A]
Выбирает все элементы, кроме первого.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
traversable коллекция, состоящая из всех элементов этой traversable коллекции, кроме первого.
- Definition Classes
- TraversableLike → GenTraversableLike
- Исключения
java.lang.UnsupportedOperationException, если traversable коллекция пустая.
def tails: Iterator[Traversable[A]]
Перебирает хвосты этой traversable коллекции. Первое значение будет этой traversable коллекцией, а последнее — пустой traversable коллекцией, а промежуточные значения — результаты последовательных применений tail.
- returns
итератор по всем хвостам этой traversable коллекции
- 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
количество элементов для извлечения из этой traversable коллекции.
- returns
traversable коллекция, содержащая только первые
nэлементов этой traversable коллекции, или вся traversable коллекция, если она имеет меньшеnэлементов. Еслиnотрицательно, возвращает пустую traversable коллекцию.
- Definition Classes
- TraversableLike → GenTraversableLike
def takeWhile(p: (A) ⇒ Boolean): Traversable[A]
Берёт самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
самый длинный префикс этой коллекции, элементы которого удовлетворяют предикату
p.
- Definition Classes
- TraversableLike → GenTraversableLike
def thisCollection: Traversable[A]
Базовая коллекция, рассматриваемая как экземпляр Traversable. По умолчанию она реализуется как текущий объект коллекции, но это можно переопределить.
- Attributes
- protected[this]
- Definition Classes
- TraversableLike
def to[Col[_]]: Col[A]
Преобразует эту коллекцию в другую, копируя все элементы.
Примечание: не завершит работу для коллекций бесконечного размера.
- Col
Тип коллекции, которую нужно создать.
- returns
новая коллекция, содержащая все элементы этой коллекции.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует эту коллекцию в массив.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
массив, содержащий все элементы этой коллекции. Должен быть доступен
ClassTagдля типа элемента этой коллекции.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toBuffer[B >: A]: Buffer[B]
Использует содержимое этого обхода или итератора для создания нового изменяемого буфера.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
буфер, содержащий все элементы этого обхода или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toCollection(repr: Traversable[A]): Traversable[A]
Преобразование из коллекций типа Repr в объекты Traversable. По умолчанию это реализуется просто как приведение типов, но это можно переопределить.
- Attributes
- protected[this]
- Definition Classes
- TraversableLike
def toIndexedSeq: immutable.IndexedSeq[A]
Преобразует этот обход или итератор в индексированную последовательность.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
индексированная последовательность, содержащая все элементы этого обхода или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIterable: Iterable[A]
Преобразует этот обход или итератор в итерируемую коллекцию. Обратите внимание, что выбор целевого Iterable в этой реализации по умолчанию ленивый, так как этот TraversableOnce может быть ленивым и невычисленным (т.е. это может быть итератор, который можно пройти только один раз).
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
итерируемую коллекцию, содержащую все элементы этого обхода или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIterator: Iterator[A]
Возвращает итератор по элементам в этой коллекции. Вернёт тот же итератор, если этот экземпляр уже является итератором.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
итератор, содержащий все элементы этой коллекции.
- Definition Classes
- TraversableLike → GenTraversableOnce
def toList: List[A]
Преобразует этот обход или итератор в список.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
список, содержащий все элементы этого обхода или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toMap[T, U]: Map[T, U]
Преобразует это множество в карту. Этот метод недоступен, если элементы не являются членами Tuple2, каждый ((T, U)) становится парой ключ-значение в карте. Повторяющиеся ключи будут перезаписаны последующими ключами: если это неупорядоченное множество, то ключ, который находится в результирующей карте, не определен.
Примечание: не завершится для множеств бесконечного размера.
- возвращает
карту типа
immutable.Map[T, U]содержащую все пары ключ/значение типа(T, U)этого множества.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toParArray: ParArray[T]
- Неявный
- Этот член добавлен с помощью неявного преобразования из AbstractTraversable[A] в CollectionsHaveToParArray[AbstractTraversable[A], T] выполненного методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование будет выполнено только в том случае, если в области видимости есть неявное значение типа (AbstractTraversable[A]) ⇒ GenTraversableOnce[T].
- Определяющие классы
- CollectionsHaveToParArray
def toSeq: Seq[A]
Преобразует это множество или итератор в последовательность. Как и toIterable, он ленивый в этой реализации по умолчанию, поскольку это TraversableOnce может быть ленивым и не вычисленным.
Примечание: не завершится для множеств бесконечного размера.
- возвращает
последовательность, содержащую все элементы этого множества или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toSet[B >: A]: immutable.Set[B]
Преобразует это множество или итератор в множество.
Примечание: не завершится для множеств бесконечного размера.
- возвращает
множество, содержащее все элементы этого множества или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toStream: Stream[A]
Преобразует это множество в поток.
- возвращает
поток, содержащий все элементы этого множества.
- Определяющие классы
- TraversableLike → GenTraversableOnce
def toString(): String
Преобразует это множество в строку.
- возвращает
строковое представление этого множества. По умолчанию эта строка состоит из
stringPrefixэтого множества, за которой следуют все элементы, разделенные запятыми и заключенные в скобки.
- Определяющие классы
- TraversableLike → Any
def toTraversable: Traversable[A]
Преобразует это множество в неопределённое множество Traversable. Возвращает то же множество, если этот экземпляр уже является Traversable.
Примечание: не завершится для множеств бесконечного размера.
- возвращает
множество Traversable, содержащее все элементы этого множества.
- Определяющие классы
- TraversableLike → TraversableOnce → GenTraversableOnce
- Аннотации
- @deprecatedOverriding( message = ... , since = "2.11.0" )
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.- returns
двумерное множество множеств, в котором n-я строка содержит n-й столбец этого множества.
- Definition Classes
- GenericTraversableTemplate
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0)
transposeвызываетIllegalArgumentExceptionесли множества не имеют одинаковый размер.- Exceptions thrown
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
- TraversableLike
def view: TraversableView[A, Traversable[A]]
Создает нестрогий вид этого перебираемого множества.
- returns
нестрогий вид этого перебираемого множества.
- Definition Classes
- 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): (AbstractTraversable[A], B)
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в ArrowAssoc[AbstractTraversable[A]] с помощью метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
Скрытые неявные члены-значения
def filter(p: (A) ⇒ Boolean): TraversableOnce[A]
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Shadowing
- Этот неявно унаследованный член скрыт одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(abstractTraversable: MonadOps[A]).filter(p)
- Definition Classes
- MonadOps
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Shadowing
- Этот неявно унаследованный член скрыт одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(abstractTraversable: MonadOps[A]).flatMap(f)
- Definition Classes
- MonadOps
def map[B](f: (A) ⇒ B): TraversableOnce[B]
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Shadowing
- Этот неявно унаследованный член скрыт одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(abstractTraversable: MonadOps[A]).map(f)
- Definition Classes
- MonadOps
def withFilter(p: (A) ⇒ Boolean): Iterator[A]
- Implicit
- Этот член добавлен неявным преобразованием из AbstractTraversable[A] в MonadOps[A] с помощью метода MonadOps в scala.collection.TraversableOnce.
- Shadowing
- Этот неявно унаследованный член скрыт одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(abstractTraversable: MonadOps[A]).withFilter(p)
- Definition Classes
- 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/AbstractTraversable.html
Явное создание экземпляра
Traversableтрейта для уменьшения размера файла класса в подклассах.