Spec-Zone.ru › Scala 2.12 Library

Класс scala.collection.mutable.AbstractBuffer

абстрактный класс AbstractBuffer[A] extends AbstractSeq[A] with Buffer[A]

Явное создание экземпляра Buffer интерфейса для уменьшения размера файлов классов в дочерних классах.

Источник
Buffer.scala
Линейные надтипы
Известные подклассы

Конструкторы экземпляров

новый AbstractBuffer()

Типовые члены

класс WithFilter extends FilterMonadic[A, Repr]

Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.

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

тип Self = Buffer[A]

Тип, реализующий этот итератор

Атрибуты
protected[this]
Определяющие классы
TraversableLike

Абстрактные члены-значения

абстрактный def +=(elem: A): AbstractBuffer.this.type

Добавляет один элемент в этот буфер.

elem

элемент для добавления.

возвращает

сам буфер

Классы-определения
BufferLike → Growable

абстрактный def +=:(elem: A): AbstractBuffer.this.type

Вставляет один элемент в начало этого буфера.

elem

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

возвращает

сам буфер.

Классы-определения
BufferLike

абстрактный def apply(n: Int): A

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

Пример:

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

scala> x(3)
res1: Int = 4
возвращает

элемент этого буфера по индексу idx, где 0 обозначает первый элемент.

Классы-определения
BufferLike → SeqLike → GenSeqLike
Исключения

IndexOutOfBoundsException, если idx не удовлетворяет 0 <= idx < length.

абстрактный def clear(): Unit

Очищает содержимое буфера. После этой операции буфер пустой.

Классы-определения
BufferLike → Growable → Clearable

абстрактный def insertAll(n: Int, elems: collection.Traversable[A]): Unit

Вставляет новые элементы в заданную позицию в этом буфере.

n

индекс, куда вставляются новые элементы.

elems

коллекция Traversable, содержащая элементы для вставки.

Классы-определения
BufferLike
Исключения

IndexOutOfBoundsException, если индекс n не находится в допустимом диапазоне 0 <= n <= length.

абстрактный def iterator: Iterator[A]

Создаёт новый итератор по всем элементам, содержащимся в этом итерируемом объекте.

возвращает

новый итератор

Классы-определения
IterableLike → GenIterableLike

абстрактный def length: Int

Длина буфера.

Примечание: xs.length и xs.size дают одинаковый результат.

возвращает

количество элементов в этом буфере.

Классы-определения
BufferLike → SeqLike → GenSeqLike
Исключения

IllegalArgumentException, если длина последовательности не может быть представлена в Int, например, (-1 to Int.MaxValue).length.

абстрактный def remove(n: Int): A

Удаляет элемент по заданному индексу из этого буфера.

n

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

возвращает

предыдущий элемент по индексу n

Классы-определения
BufferLike
Исключения

IndexOutOfBoundsException, если индекс n не находится в допустимом диапазоне 0 <= n < length.

абстрактный def update(n: Int, newelem: A): Unit

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

Классы-определения
BufferLike → SeqLike
Исключения

IndexOutOfBoundsException, если индекс недействителен.

Члены-значения

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

returns

true если !(this == that), в противном случае false.

Definition Classes
AnyRef → Any

final def ##(): Int

Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел он возвращает значение хэша, согласованное с равенством значений: если два экземпляра типа значений сравниваются как true, то ## создаст для каждого из них одинаковое значение хэша. Для null возвращает хэш-код, где null.hashCode генерирует NullPointerException.

returns

значение хэша, согласованное с ==

Definition Classes
AnyRef → Any

def +(other: String): String

Неявный
Этот член добавлен благодаря неявной конверсии из AbstractBuffer[A] в any2stringadd[AbstractBuffer[A]], выполненной методом any2stringadd в scala.Predef.
Definition Classes
any2stringadd

def ++(xs: GenTraversableOnce[A]): Buffer[A]

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

xs

объект-перечислитель.

returns

новая коллекция, состоящая из всех элементов этой коллекции и xs.

Definition Classes
BufferLike
Annotations
@migration
Migration

(Изменено в версии 2.8.0) ++ создаёт новый буфер. Используйте ++= для добавления элемента из этого буфера и возвращения самого буфера.

def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Buffer[A], B, That]): That

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

B

тип элемента возвращаемой коллекции.

That

класс возвращаемой коллекции. По возможности, That — это тот же класс, что и текущий класс коллекции Repr, но это зависит от того, является ли тип элемента B допустимым для этого класса, что означает, что найден неявный экземпляр типа CanBuildFrom[Repr, B, That].

that

перечислитель для добавления.

bf

неявное значение класса CanBuildFrom, которое определяет возвращаемый класс That из текущего типа представления Repr и нового типа элемента B.

returns

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

Definition Classes
TraversableLike → GenTraversableLike

def ++:[B >: A, That](that: collection.Traversable[B])(implicit bf: CanBuildFrom[Buffer[A], B, That]): That

Как и ++, возвращает новую коллекцию, содержащую элементы левого операнда, после которых следуют элементы правого операнда.

Отличается от ++ тем, что правый операнд определяет тип возвращаемой коллекции, а не левый. Мемоническое правило: COLon находится со стороны типа новой COLлекции.

Пример:

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.

returns

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

Definition Classes
TraversableLike

def ++:[B](that: TraversableOnce[B]): Buffer[B]

[use case]

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

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

Пример:

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 ++=(xs: TraversableOnce[A]): AbstractBuffer.this.type

Добавляет все элементы, полученные от TraversableOnce, в эту нарастающую коллекцию.

xs

TraversableOnce, генерирующий элементы для добавления.

возвращает

саму нарастающую коллекцию.

Классы-определения
Growable

def ++=:(xs: TraversableOnce[A]): AbstractBuffer.this.type

Добавляет элементы в начало этого буфера.

xs

TraversableOnce, содержащий элементы для добавления в начало.

возвращает

сам буфер.

Классы-определения
BufferLike

def +:(elem: A): Buffer[A]

[use case]

Копия буфера с добавленным элементом в начало.

Обратите внимание, что операторы с окончанием двоеточием ассоциативны справа (см. пример). Мемоника для +: против :+ такова: двоеточие идет со стороны коллекции.

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

Пример:

scala> val x = List(1)
x: List[Int] = List(1)

scala> val y = 2 +: x
y: List[Int] = List(2, 1)

scala> println(x)
List(1)
elem

элемент, добавляемый в начало

возвращает

новый буфер, состоящий из elem и всех элементов этого буфера.

Классы-определения
SeqLike → GenSeqLike
Полная подпись

def +=(elem1: A, elem2: A, elems: A*): AbstractBuffer.this.type

Добавляет два или более элементов в эту нарастающую коллекцию.

elem1

первый элемент для добавления.

elem2

второй элемент для добавления.

elems

остальные элементы для добавления.

возвращает

саму нарастающую коллекцию

Классы-определения
Growable

def -(elem1: A, elem2: A, elems: A*): Buffer[A]

Создает новую коллекцию, содержащую все элементы этой коллекции, кроме указанных двух или более элементов.

elem1

первый элемент для удаления.

elem2

второй элемент для удаления.

elems

остальные элементы для удаления.

возвращает

новую коллекцию, содержащую все элементы этой коллекции, кроме elem1, elem2 и тех, что в elems.

Классы-определения
BufferLike → Subtractable
Аннотации
@migration
Миграция

(Изменено в версии 2.8.0) - создаёт новый буфер. Используйте -= для удаления элемента из этого буфера и возвращения самого буфера.

def -(elem: A): Buffer[A]

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

elem

элемент для удаления.

возвращает

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

Классы-определения
BufferLike → Subtractable
Аннотации
@migration
Миграция

(Изменено в версии 2.8.0) - создаёт новый буфер. Используйте -= для удаления элемента из этого буфера и возвращения самого буфера.

def --(xs: GenTraversableOnce[A]): Buffer[A]

Создаёт новую коллекцию, содержащую все элементы этой коллекции, кроме элементов, заданных указанным перебираемым объектом.

xs

перебираемый объект.

возвращает

новую коллекцию, содержащую все элементы этой коллекции, кроме элементов в xs

Классы-определения
BufferLike → Subtractable
Аннотации
@migration
Миграция

(Изменено в версии 2.8.0) -- создаёт новый буфер. Используйте --= для удаления элемента из этого буфера и возвращения самого буфера.

def --=(xs: TraversableOnce[A]): AbstractBuffer.this.type

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

xs

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

returns

сам сжимаемый набор

Definition Classes
Shrinkable

def -=(x: A): AbstractBuffer.this.type

Удаляет единственный элемент из этого буфера по его первому вхождению. Если буфер не содержит этот элемент, он остается неизменным.

x

элемент для удаления.

returns

сам буфер

Definition Classes
BufferLike → Shrinkable

def -=(elem1: A, elem2: A, elems: A*): AbstractBuffer.this.type

Удаляет два или более элементов из этого сжимаемого набора.

elem1

первый элемент для удаления.

elem2

второй элемент для удаления.

elems

оставшиеся элементы для удаления.

returns

сам сжимаемый набор

Definition Classes
Shrinkable

def ->[B](y: B): (AbstractBuffer[A], B)

Implicit
Этот член добавлен неявным преобразованием от AbstractBuffer[A] к ArrowAssoc[AbstractBuffer[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 :+(elem: A): Buffer[A]

[use case]

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

Мемоническое правило для +: против :+: Двоеточие идет к стороне COLlection.

Пример:

scala> val a = List(1)
a: List[Int] = List(1)

scala> val b = a :+ 2
b: List[Int] = List(1, 2)

scala> println(a)
List(1)
elem

элемент, добавляемый в конец.

returns

новый буфер, содержащий все элементы этого буфера, после которых следует elem.

Definition Classes
SeqLike → GenSeqLike
Полная сигнатура

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: scala.StringBuilder): scala.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: scala.StringBuilder, sep: String): scala.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: scala.StringBuilder, start: String, sep: String, end: String): scala.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 })

def andThen[C](k: (A) ⇒ C): PartialFunction[Int, C]

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

def append(elems: A*): Unit

Добавляет заданные элементы в этот буфер.

def appendAll(xs: TraversableOnce[A]): Unit

Добавляет элементы, содержащиеся в итерируемом объекте, в этот буфер.

def applyOrElse[A1 <: Int, B1 >: A](x: A1, default: (A1) ⇒ B1): B1

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

Обратите внимание, что выражение pf.applyOrElse(x, default) эквивалентно

if(pf isDefinedAt x) pf(x) else default(x)

за исключением того, что метод applyOrElse может быть реализован более эффективно. Для всех литералов частичных функций компилятор генерирует реализацию applyOrElse, которая избегает двойной оценки соответствия шаблонам и условий. Это делает applyOrElse основой для эффективной реализации во многих операциях и сценариях, таких как:

    комбинирование частичных функций в цепочки orElse/andThen не приводит к чрезмерной apply/isDefinedAt оценке lift и unlift не вычисляют исходные функции дважды при каждом вызове runWith позволяет эффективно комбинировать частичные функции в стиле императива с условными действиями

Для классов частичных функций, не являющихся литералами, с ненулевой функцией isDefinedAt рекомендуется переопределить applyOrElse собственной реализацией, которая избегает двойной isDefinedAt оценки. Это может привести к лучшей производительности и более предсказуемому поведению в отношении побочных эффектов.

x

аргумент функции

default

функция по умолчанию

returns

результат применения этой функции или функции по умолчанию.

Definition Classes
PartialFunction
Since

2.10

final def asInstanceOf[T0]: T0

Преобразовать текущий объект в тип T0.

Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] не выбросит. В последнем примере, из-за стирания аргумента типа во время компиляции, невозможно проверить, соответствуют ли содержимое списка запрошенному типу.

returns

текущий объект.

Definition Classes
Any
Исключения

ClassCastException, если текущий объект не является экземпляром стирания типа T0.

def canEqual(that: Any): Boolean

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

that

Объект, с которым эта коллекция итерируемых объектов должна быть сравнена.

returns

true, если эта коллекция итерируемых объектов может быть равна that, false в противном случае. Тест учитывает только типы объектов во время выполнения, но игнорирует их элементы.

Definition Classes
IterableLike → Equals

def clone(): Buffer[A]

Возвращает копию этого буфера.

returns

копию буфера с теми же элементами.

Definition Classes
BufferLike → Cloneable → AnyRef

def collect[B](pf: PartialFunction[A, B]): Buffer[B]

[use case]

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

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 combinations(n: Int): Iterator[Buffer[A]]

Итерируется по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке следования. Таким образом, "xy" и "yy" — это комбинации длины 2 последовательности "xyy", но "yx" — нет. Если есть более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращен только один вариант.

Например, "xyyy" имеет три способа сгенерировать "xy" в зависимости от того, выбирается ли первый, второй или третий "y" . Однако, поскольку все они идентичны, будет выбран только один. Какой из трех будет выбран — детали реализации, которые не определены.

returns

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

Definition Classes
SeqLike
Пример:

    "abbbc".combinations(2) = Iterator(ab, ac, bb, bc)

def companion: GenericCompanion[Buffer]

Объект-компаньон фабрики, который создает экземпляры класса Buffer. (или его Iterable суперкласса, где класс Buffer не является Seq.)

Определяющие классы
Buffer → Seq → Seq → GenSeq → Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → GenericTraversableTemplate

def compose[A](g: (A) ⇒ Int): (A) ⇒ A

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

A

тип, к которому может быть применена функция g

g

функция A => T1

возвращает

новую функцию f, такую что f(x) == apply(g(x))

Определяющие классы
Function1
Аннотации
@unspecialized()

def contains[A1 >: A](elem: A1): Boolean

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

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

elem

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

возвращает

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

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

def containsSlice[B](that: GenSeq[B]): Boolean

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

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

that

последовательность для проверки

возвращает

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

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

def copyToArray(xs: Array[A], start: Int, len: Int): Unit

[use case]

Копирует элементы этого буфера в массив. Заполняет данный массив xs максимум len элементами этого буфера, начиная с позиции start. Копирование остановится, как только будет достигнут либо конец текущего буфера, либо конец целевого массива, либо будет скопировано len элементов.

xs

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

start

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

len

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

Определяющие классы
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
Полная сигнатура

def copyToArray(xs: Array[A]): Unit

[use case]

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

xs

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

Определяющие классы
TraversableOnce → GenTraversableOnce
Полная сигнатура

def copyToArray(xs: Array[A], start: Int): Unit

[use case]

Копирует элементы этого буфера в массив. Заполняет данный массив xs значениями этого буфера, начиная с индекса start. Копирование остановится, как только будет достигнут либо конец текущего буфера, либо конец целевого массива.

xs

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

start

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

Определяющие классы
TraversableOnce → GenTraversableOnce
Полная сигнатура

def copyToBuffer[B >: A](dest: Buffer[B]): Unit

Копирует все элементы этого обхода или итератора в буфер.

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

dest

Буфер, в который копируются элементы.

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

def corresponds[B](that: GenSeq[B])(p: (A, B) ⇒ Boolean): Boolean

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

B

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

that

другая последовательность

p

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

returns

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

Определяющие классы
SeqLike → GenSeqLike

def count(p: (A) ⇒ Boolean): Int

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

p

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

returns

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

Определяющие классы
TraversableOnce → GenTraversableOnce

def diff(that: collection.Seq[A]): Buffer[A]

[use case]

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

that

последовательность элементов для удаления

returns

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

Определяющие классы
SeqLike → GenSeqLike
Полная сигнатура

def distinct: Buffer[A]

Создает новую последовательность из этой последовательности без каких-либо дублирующих элементов.

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

returns

Новая последовательность, которая содержит первое вхождение каждого элемента этой последовательности.

Определяющие классы
SeqLike → GenSeqLike

def drop(n: Int): Buffer[A]

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

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

n

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

returns

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

Определяющие классы
IterableLike → TraversableLike → GenTraversableLike

def dropRight(n: Int): Buffer[A]

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

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

n

Количество элементов для взятия

returns

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

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

def dropWhile(p: (A) ⇒ Boolean): Buffer[A]

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

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

returns

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

Определяющие классы
TraversableLike → GenTraversableLike

def endsWith[B](that: GenSeq[B]): Boolean

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

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

that

последовательность для проверки

returns

true если эта последовательность имеет that в качестве суффикса, false иначе.

Определяющие классы
SeqLike → GenSeqLike

def ensuring(cond: (AbstractBuffer[A]) ⇒ Boolean, msg: ⇒ Any): AbstractBuffer[A]

Неявный
Этот член добавлен неявным преобразованием из AbstractBuffer[A] в Ensuring[AbstractBuffer[A]] при помощи метода Ensuring в scala.Predef.
Классы-определения
Ensuring

def ensuring(cond: (AbstractBuffer[A]) ⇒ Boolean): AbstractBuffer[A]

Неявный
Этот член добавлен неявным преобразованием из AbstractBuffer[A] в Ensuring[AbstractBuffer[A]] при помощи метода Ensuring в scala.Predef.
Классы-определения
Ensuring

def ensuring(cond: Boolean, msg: ⇒ Any): AbstractBuffer[A]

Неявный
Этот член добавлен неявным преобразованием из AbstractBuffer[A] в Ensuring[AbstractBuffer[A]] при помощи метода Ensuring в scala.Predef.
Классы-определения
Ensuring

def ensuring(cond: Boolean): AbstractBuffer[A]

Неявный
Этот член добавлен неявным преобразованием из AbstractBuffer[A] в Ensuring[AbstractBuffer[A]] при помощи метода Ensuring в scala.Predef.
Классы-определения
Ensuring

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).

Метод eq реализует отношение эквивалентности на не-null экземплярах AnyRef, и имеет три дополнительных свойства:

    Он является согласованным: для любых не-null экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-null экземпляра 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

Метод equals для произвольных последовательностей. Сравнивает эту последовательность с другим объектом.

that

Объект для сравнения с последовательностью

возвращает

true если that является последовательностью, имеющей те же элементы, что и эта последовательность в том же порядке, false в противном случае

Классы-определения
GenSeqLike → Equals → Any

def exists(p: (A) ⇒ Boolean): Boolean

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

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

p

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

возвращает

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

Классы-определения
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

def filter(p: (A) ⇒ Boolean): Buffer[A]

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

p

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

возвращает

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

Классы-определения
TraversableLike → GenTraversableLike

def filterNot(p: (A) ⇒ Boolean): Buffer[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
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Buffer[B]

[use case]

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

Например:

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]: Buffer[B]

[use case]

Преобразует этот буфер итерируемых коллекций в буфер, образованный элементами этих итерируемых коллекций.

Тип результирующей коллекции будет определяться статическим типом буфера. Например:

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
IterableLike → TraversableOnce → GenTraversableOnce

def forall(p: (A) ⇒ Boolean): Boolean

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

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

p

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

returns

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

Definition Classes
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

def foreach(f: (A) ⇒ Unit): Unit

[use case]

Применяет функцию f ко всем элементам этого буфера.

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

f

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

Definition Classes
IterableLike → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
Полная сигнатура

def formatted(fmtstr: String): String

Возвращает строку, отформатированную в соответствии с данной format строкой. Форматные строки аналогичны String.format (@see java.lang.String.format).

Неявный
Этот член добавляется неявным преобразованием из AbstractBuffer[A] в StringFormat[AbstractBuffer[A]] с помощью метода StringFormat в scala.Predef.
Definition Classes
StringFormat
Annotations
@inline()

def genericBuilder[B]: Builder[B, Buffer[B]]

Общий билдер, который создает экземпляры Traversable для произвольных типов элементов.

Definition Classes
GenericTraversableTemplate

final def getClass(): Class[_]

Возвращает представление класса объекта во время выполнения.

returns

объект класса, соответствующий типу времени выполнения получателя.

Definition Classes
AnyRef → Any
Annotations
@native()

def groupBy[K](f: (A) ⇒ K): immutable.Map[K, Buffer[A]]

Разделяет этот итерируемый набор на карту итерируемых наборов по некоторой функции-дискриминатору.

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

K

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

f

функция-дискриминатор.

returns

Карта от ключей к итерируемым наборам, такая что выполняется следующее инвариантное свойство:

(xs groupBy f)(k) = xs filter (x => f(x) == k)

То есть, каждый ключ k связан с итерируемым набором тех элементов x, для которых f(x) равно k.

Definition Classes
TraversableLike → GenTraversableLike

def grouped(size: Int): Iterator[Buffer[A]]

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

size

количество элементов в группе

returns

Итератор, генерирующий итерируемые наборы размера size, за исключением последнего, размер которого будет меньше size size, если элементы не делятся на размер группы без остатка.

Definition Classes
IterableLike
См. также

scala.collection.Iterator, метод grouped

def hasDefiniteSize: Boolean

Проверяет, известно ли, что этот итерируемый набор имеет конечный размер. Все строгие наборы известны как имеющие конечный размер. Для нестрогого набора, такого как Stream, предикат возвращает true если все элементы были вычислены. Он возвращает false если поток еще не был полностью вычислен. Непустые итераторы обычно возвращают false даже если они были созданы из набора с известным конечным размером.

Примечание: многие методы коллекций не будут работать с бесконечными наборами. Типичный режим сбоя - бесконечный цикл. Эти методы всегда пытаются выполнить итерацию, не проверяя сначала, что hasDefiniteSize возвращает true. Однако, проверка hasDefiniteSize может гарантировать, что размер определен и бесконечное выполнение не является проблемой.

returns

true если известно, что у этого набора конечный размер, false в противном случае.

Definition Classes
TraversableLike → TraversableOnce → GenTraversableOnce

def hashCode(): Int

Хэшкоды для GenSeq генерируют значение из хэшкодов всех элементов общего набора.

returns

значение хэшкода для этого объекта.

Definition Classes
GenSeqLike → Any

def head: A

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

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

returns

первый элемент этого итерируемого набора.

Definition Classes
IterableLike → TraversableLike → GenTraversableLike
Исключения

NoSuchElementException, если итерируемый набор пуст.

def headOption: Option[A]

Выбирает первый элемент, если он существует.

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

returns

первый элемент этого итерируемого набора, если он непустой, None если он пустой.

Definition Classes
TraversableLike → GenTraversableLike

def indexOf(elem: A, from: Int): Int

[use case]

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

elem

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

from

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

returns

индекс >= from первого элемента этого буфера, который равен (как определено ==) элементу elem, или -1, если такого элемента нет.

Definition Classes
GenSeqLike
Полная сигнатура

def indexOf(elem: A): Int

[use case]

Находит индекс первого вхождения значения в этом буфере.

elem

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

returns

индекс первого элемента этого буфера, который равен (как определено ==) элементу elem, или -1, если такого элемента нет.

Definition Classes
GenSeqLike
Полная сигнатура

def indexOfSlice[B >: A](that: GenSeq[B], from: Int): Int

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

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

that

последовательность для проверки

from

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

returns

первый индекс >= from такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1 если такой подпоследовательности нет.

Definition Classes
SeqLike

def indexOfSlice[B >: A](that: GenSeq[B]): Int

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

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

that

исходная последовательность

returns

первый индекс, такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1 если такой подпоследовательности не существует.

Definition Classes
SeqLike

def indexWhere(p: (A) ⇒ Boolean, from: Int): Int

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

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

p

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

from

стартовый индекс

returns

индекс >= from первого элемента этой последовательности, удовлетворяющего предикату p, или -1, если такового нет.

Definition Classes
SeqLike → GenSeqLike

def indexWhere(p: (A) ⇒ Boolean): Int

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

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

p

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

returns

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

Definition Classes
GenSeqLike

def indices: immutable.Range

Возвращает диапазон всех индексов этой последовательности.

returns

значение Range от 0 до значения, на единицу меньшего, чем длина этой последовательности.

Definition Classes
SeqLike

def init: Buffer[A]

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

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

returns

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

Definition Classes
TraversableLike → GenTraversableLike
Исключения

UnsupportedOperationException если коллекция обхода пуста.

def inits: Iterator[Buffer[A]]

Итерирует по начальным фрагментам (inits) этой коллекции обхода. Первое значение будет этой коллекцией обхода, а последнее — пустой коллекцией обхода, а промежуточные значения — результатами последовательных применений init.

returns

итератор по всем начальным фрагментам (inits) этой коллекции обхода

Definition Classes
TraversableLike
Пример:

    List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)

def insert(n: Int, elems: A*): Unit

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

n

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

elems

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

Definition Classes
BufferLike
Исключения

IndexOutOfBoundsException если индекс n не входит в допустимый диапазон 0 <= n <= length.

def intersect(that: collection.Seq[A]): Buffer[A]

[use case]

Вычисляет пересечение между этим буфером и другой последовательностью.

that

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

returns

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

Definition Classes
SeqLike → GenSeqLike
Полная сигнатура

def isDefinedAt(idx: Int): Boolean

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

Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].

idx

индекс для проверки

returns

true если эта общая последовательность содержит элемент в позиции idx, false в противном случае.

Definition Classes
GenSeqLike

def isEmpty: Boolean

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

возвращает

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

Классы-определения
SeqLike → IterableLike → 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 lastIndexOf(elem: A, end: Int): Int

[use case]

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

elem

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

end

индекс конца.

возвращает

индекс <= end последнего элемента этого буфера, который равен (как определяется ==) elem, или -1, если такого элемента нет.

Классы-определения
GenSeqLike
Полная сигнатура

def lastIndexOf(elem: A): Int

[use case]

Находит индекс последнего вхождения некоторого значения в этот буфер.

elem

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

возвращает

индекс последнего элемента этого буфера, который равен (как определяется ==) elem, или -1, если такого элемента нет.

Классы-определения
GenSeqLike
Полная сигнатура

def lastIndexOfSlice[B >: A](that: GenSeq[B], end: Int): Int

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

that

последовательность для проверки

end

индекс конца

возвращает

последний индекс <= end такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1 если такой подпоследовательности нет.

Классы-определения
SeqLike

def lastIndexOfSlice[B >: A](that: GenSeq[B]): Int

Находит последний индекс, где эта последовательность содержит заданную последовательность как срез.

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

that

последовательность для проверки

возвращает

последний индекс, такой что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1 если такой подпоследовательности нет.

Классы-определения
SeqLike

def lastIndexWhere(p: (A) ⇒ Boolean, end: Int): Int

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

p

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

возвращает

индекс <= end последнего элемента этой последовательности, удовлетворяющего предикату p, или -1, если такого элемента нет.

Классы-определения
SeqLike → GenSeqLike

def lastIndexWhere(p: (A) ⇒ Boolean): Int

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

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

p

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

returns

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

Definition Classes
GenSeqLike

def lastOption: Option[A]

Выбирает последний элемент.

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

returns

последний элемент этой коллекции, если она не пуста, None если она пуста.

Definition Classes
TraversableLike → GenTraversableLike

def lengthCompare(len: Int): Int

Сравнивает длину этой последовательности со значением-тестом.

len

значение-тест, которое сравнивается с длиной.

returns

Значение x, где

x <  0       if this.length <  len
x == 0       if this.length == len
x >  0       if this.length >  len

Метод, реализованный здесь, не вызывает length напрямую; его время выполнения равно O(length min len), а не O(length). Метод следует переопределять, если вычисление length является недорогим.

Definition Classes
SeqLike

def lift: (Int) ⇒ Option[A]

Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.

returns

функцию, которая принимает аргумент x к Some(this(x)), если this определено для x, и к None в противном случае.

Definition Classes
PartialFunction
См. также

Function.unlift

def map[B](f: (A) ⇒ B): Buffer[B]

[use case]

Строит новую коллекцию, применяя функцию ко всем элементам этого буфера.

B

тип элементов возвращаемой коллекции.

f

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

returns

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

Definition Classes
TraversableLike → GenTraversableLike → FilterMonadic
Полная сигнатура

def max: A

[use case]

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

returns

наибольший элемент этого буфера.

Definition Classes
TraversableOnce → GenTraversableOnce
Полная сигнатура
Исключения

UnsupportedOperationException если этот буфер пуст.

def maxBy[B](f: (A) ⇒ B): A

[use case]

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

B

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

f

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce
Полная сигнатура
Исключения

UnsupportedOperationException если этот буфер пуст.

def min: A

[use case]

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

returns

наименьший элемент этого буфера

Definition Classes
TraversableOnce → GenTraversableOnce
Полная сигнатура
Исключения

UnsupportedOperationException если этот буфер пуст.

def minBy[B](f: (A) ⇒ B): A

[use case]

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

B

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

f

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

returns

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

Definition Classes
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, Buffer[A]]

Построитель, создающий экземпляры типа Traversable[A]

Атрибуты
protected[this]
Определяющие классы
GenericTraversableTemplate → HasNewBuilder

def nonEmpty: Boolean

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

возвращает

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

Определяющие классы
TraversableOnce → GenTraversableOnce

final def notify(): Unit

Разбуждает один поток, ожидающий монитора объекта-получателя.

Определяющие классы
AnyRef
Аннотации
@native()
Примечание

не указано SLS в качестве члена AnyRef

final def notifyAll(): Unit

Разбуждает все потоки, ожидающие монитора объекта-получателя.

Определяющие классы
AnyRef
Аннотации
@native()
Примечание

не указано SLS в качестве члена AnyRef

def orElse[A1 <: Int, B1 >: A](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]

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

A1

тип аргумента резервной функции

B1

тип результата резервной функции

that

резервная функция

возвращает

частичная функция, которая имеет в качестве области определения объединение областей определения этой частичной функции и that. Результирующая частичная функция принимает x к this(x) там, где this определена, и к that(x) в противном случае.

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

def padTo(len: Int, elem: A): Buffer[A]

[use case]

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

len

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

elem

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

возвращает

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

Определяющие классы
SeqLike → GenSeqLike
Полная подпись

def par: ParSeq[A]

Возвращает параллельную реализацию этого набора.

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

У конкретных наборов (например, ParArray или mutable.ParHashMap) переопределяется это поведение по умолчанию путем создания параллельного набора, который использует тот же базовый набор данных. Для этих наборов, par занимает постоянное или сублинейное время.

Все параллельные наборы возвращают ссылку на себя.

returns

параллельная реализация этого набора

Definition Classes
Parallelizable

def parCombiner: Combiner[A, ParSeq[A]]

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

returns

комбинирующее устройство для параллельного набора типа ParRepr

Attributes
protected[this]
Definition Classes
SeqLike → SeqLike → TraversableLike → Parallelizable

def partition(p: (A) ⇒ Boolean): (Buffer[A], Buffer[A])

Разделяет этот набор на два набора по условию.

p

условие для разделения.

returns

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

Definition Classes
TraversableLike → GenTraversableLike

def patch(from: Int, that: GenSeq[A], replaced: Int): Buffer[A]

[use case]

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

from

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

replaced

количество элементов для удаления в исходном наборе

returns

новый набор, содержащий все элементы этого набора, за исключением того, что replaced элементы, начиная с from, заменяются на patch.

Definition Classes
SeqLike → GenSeqLike
Полная сигнатура

def permutations: Iterator[Buffer[A]]

Перебирает все возможные перестановки.

returns

Итератор, перебирающий все возможные перестановки этого набора.

Definition Classes
SeqLike
Пример:

    "abb".permutations = Iterator(abb, bab, bba)

def prefixLength(p: (A) ⇒ Boolean): Int

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

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

p

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

returns

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

Definition Classes
GenSeqLike

def prepend(elems: A*): Unit

Добавляет заданные элементы в начало этого набора.

elems

элементы для добавления в начало.

Definition Classes
BufferLike

def prependAll(xs: TraversableOnce[A]): Unit

Добавляет элементы, содержащиеся в наборе, в начало этого набора.

xs

набор, содержащий элементы для добавления в начало.

Definition Classes
BufferLike

def product: A

[use case]

Перемножает элементы этого набора.

returns

произведение всех элементов в этом буфере числового типа Int. Вместо Int, может быть использован любой другой тип T с неявным Numeric[T] имплементацией как тип элементов буфера и как тип результата product. Примеры таких типов: Long, Double, BigInt.

Definition Classes
TraversableOnce → GenTraversableOnce
Полная сигнатура

def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1

Сводит элементы этого итерируемого объекта или итератора с помощью заданного ассоциативного бинарного оператора.

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

A1

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

op

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

returns

Результат применения оператора сводки 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
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, содержащее результат применения оператора сводки 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
IterableLike → TraversableOnce → GenTraversableOnce
Exceptions thrown

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

def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]

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

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

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

B

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

op

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def remove(n: Int, count: Int): Unit

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

n

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

count

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

Definition Classes
BufferLike
Исключения

IllegalArgumentException, если count < 0.

IndexOutOfBoundsException, если индекс n не находится в допустимом диапазоне 0 <= n <= length - count (с count > 0).

def repr: Buffer[A]

Коллекция типа обходчика, лежащего в основе этого объекта TraversableLike. По умолчанию она реализована как сам объект TraversableLike, но это можно переопределить.

Definition Classes
TraversableLike → GenTraversableLike

def reverse: Buffer[A]

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

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

returns

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

Definition Classes
SeqLike → GenSeqLike

def reverseIterator: Iterator[A]

Итератор, возвращающий элементы в обратном порядке.

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

Примечание: xs.reverseIterator эквивалентен xs.reverse.iterator, но может быть более эффективным.

returns

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

Definition Classes
SeqLike

def reverseMap[B](f: (A) ⇒ B): Buffer[B]

[use case]

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

Примечание: xs.reverseMap(f) эквивалентен xs.reverse.map(f), но может быть более эффективным.

B

тип элемента возвращаемой коллекции.

f

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

returns

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

Definition Classes
SeqLike → GenSeqLike
Полная подпись

def reversed: List[A]

Attributes
protected[this]
Definition Classes
TraversableOnce

def runWith[U](action: (A) ⇒ U): (Int) ⇒ Boolean

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

Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно

if(pf isDefinedAt x) { action(pf(x)); true } else false

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

action

функция действия

returns

функция, которая сопоставляет аргументы x со значениями isDefinedAt(x). Результирующая функция выполняет action(this(x)) там, где this определено.

Definition Classes
PartialFunction
Since

2.10

См. также

applyOrElse.

def sameElements(that: GenIterable[A]): Boolean

[use case]

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

that

коллекция для сравнения.

returns

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

Definition Classes
IterableLike → GenIterableLike
Полная подпись

def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[Buffer[A], B, That]): That

Вычисляет префиксный сканирование элементов коллекции.

Примечание: нейтральный элемент z может применяться более одного раза.

B

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

That

тип результирующей коллекции

z

нейтральный элемент для оператора op

op

ассоциативный оператор для сканирования

cbf

фабрика объединителей, которая предоставляет объединитель

returns

новая коллекция, содержащая префиксное сканирование элементов в этой коллекции

Определяющие классы
TraversableLike → GenTraversableLike

def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[Buffer[A], B, That]): That

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

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

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

B

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

That

фактический тип результирующей коллекции

z

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

op

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

bf

неявное значение класса CanBuildFrom , которое определяет результирующий класс That из текущего типа представления Repr и нового типа элемента B.

returns

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

Определяющие классы
TraversableLike → GenTraversableLike

def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[Buffer[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

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

Определяющие классы
TraversableLike → GenTraversableLike
Аннотации
@migration
Миграция

(Изменено в версии 2.9.0) Поведение scanRight изменилось. Прежнее поведение может быть воспроизведено с помощью scanRight.reverse.

def segmentLength(p: (A) ⇒ Boolean, from: Int): Int

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

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

p

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

from

индекс, с которого начинается поиск.

returns

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

Определяющие классы
SeqLike → GenSeqLike

def seq: Seq[A]

Версия этого набора с применением всех операций последовательно (т.е., в однопоточном режиме).

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

returns

последовательный вид набора.

Definition Classes
Seq → Seq → GenSeq → GenSeqLike → Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce

def size: Int

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

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

returns

количество элементов в этой последовательности.

Definition Classes
SeqLike → GenTraversableLike → TraversableOnce → GenTraversableOnce

def sizeHintIfCheap: Int

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

returns

количество элементов в этом наборе или итераторе, или -1, если размер нельзя определить быстро

Attributes
protected[collection]
Definition Classes
GenTraversableOnce

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

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

from <= indexOf(x) < until

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

returns

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

Definition Classes
IterableLike → TraversableLike → GenTraversableLike

def sliding(size: Int, step: Int): Iterator[Buffer[A]]

Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения на части, как это делается в grouped).

size

количество элементов в группе

step

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

returns

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

Definition Classes
IterableLike
See also

scala.collection.Iterator, метод sliding

def sliding(size: Int): Iterator[Buffer[A]]

Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения на части, как это делается в grouped). Шаг «скользящего окна» установлен в единицу.

size

количество элементов в группе

returns

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

Definition Classes
IterableLike
See also

scala.collection.Iterator, метод sliding

def sortBy[B](f: (A) ⇒ B)(implicit ord: math.Ordering[B]): Buffer[A]

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

B

целевой тип преобразования f, и тип, где определено упорядочение ord.

f

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

ord

упорядочение, предполагаемое в области B.

returns

последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с упорядочением, где x < y если ord.lt(f(x), f(y)).

Definition Classes
SeqLike
Пример:
    val words = "The quick brown fox jumped over the lazy dog".split(' ')
    // this works because scala.Ordering will implicitly provide an Ordering[Tuple2[Int, Char]]
    words.sortBy(x => (x.length, x.head))
    res0: Array[String] = Array(The, dog, fox, the, lazy, over, brown, quick, jumped)
See also

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

def sortWith(lt: (A, A) ⇒ Boolean): Buffer[A]

Сортирует эту последовательность в соответствии с функцией сравнения.

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

Сортировка стабильная. То есть элементы, которые равны (как определяется lt), появляются в отсортированной последовательности в том же порядке, что и в оригинале.

lt

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

returns

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

Definition Classes
SeqLike
Пример:
    List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
    List("Bob", "John", "Steve", "Tom")

def sorted[B >: A](implicit ord: math.Ordering[B]): Buffer[A]

Сортирует эту последовательность согласно Ordering.

Сортировка является стабильной. То есть элементы, которые равны (как определяется lt), появляются в отсортированной последовательности в том же порядке, что и в оригинале.

ord

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

returns

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

Definition Classes
SeqLike
См. также

scala.math.Ordering

def span(p: (A) ⇒ Boolean): (Buffer[A], Buffer[A])

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

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

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

returns

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

Definition Classes
TraversableLike → GenTraversableLike

def splitAt(n: Int): (Buffer[A], Buffer[A])

Разделяет эту коллекцию итераций на две части в заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).

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

n

позиция, в которой необходимо разделить.

returns

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

Definition Classes
TraversableLike → GenTraversableLike

def startsWith[B](that: GenSeq[B], offset: Int): Boolean

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

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

that

исследуемая последовательность

offset

индекс, в котором ищется последовательность.

returns

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

Definition Classes
SeqLike → GenSeqLike

def startsWith[B](that: GenSeq[B]): Boolean

Проверяет, начинается ли эта общая последовательность с данной последовательности.

that

исследуемая последовательность

returns

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

Definition Classes
GenSeqLike

def stringPrefix: String

Определяет префикс представления этого объекта.

returns

строковое представление, которое начинается с результата toString, примененного к этому набору. Если не переопределено, это просто "Buffer".

Definition Classes
BufferLike → TraversableLike → GenTraversableLike

def sum: A

[use case]

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

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: Buffer[A]

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

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

returns

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

Definition Classes
TraversableLike → GenTraversableLike
Exceptions thrown

java.lang.UnsupportedOperationException если итерируемая коллекция пустая.

def tails: Iterator[Buffer[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): Buffer[A]

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

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

n

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

returns

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

Definition Classes
IterableLike → TraversableLike → GenTraversableLike

def takeRight(n: Int): Buffer[A]

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

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

n

количество элементов для взятия

returns

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

Definition Classes
IterableLike

def takeWhile(p: (A) ⇒ Boolean): Buffer[A]

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

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

returns

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

Definition Classes
IterableLike → TraversableLike → GenTraversableLike

def thisCollection: collection.Seq[A]

Базовая коллекция, рассматриваемая как экземпляр Seq. По умолчанию она реализуется как сам объект текущей коллекции, но это можно переопределить.

Attributes
protected[this]
Definition Classes
SeqLike → IterableLike → TraversableLike

def to[Col[_]]: Col[A]

[use case]

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

Col

Тип коллекции для построения.

returns

новая коллекция, содержащая все элементы этого буфера.

Definition Classes
TraversableLike → TraversableOnce → GenTraversableOnce
Полная подпись

def toArray: Array[A]

[use case]

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

returns

массив, содержащий все элементы этого буфера. Должен быть доступен ClassTag для типа элементов этого буфера.

Definition Classes
TraversableOnce → GenTraversableOnce
Полная подпись

def toBuffer[B >: A]: Buffer[B]

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

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def toCollection(repr: Buffer[A]): collection.Seq[A]

Преобразование из наборов типа Repr в объекты Seq. По умолчанию это реализуется просто как приведение типов, но это можно переопределить.

Атрибуты
protected[this]
Определяющие классы
SeqLike → IterableLike → TraversableLike

def toIndexedSeq: immutable.IndexedSeq[A]

Преобразует это обобщенное множество или итератор в индексированную последовательность.

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

возвращает

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

Определяющие классы
TraversableOnce → GenTraversableOnce

def toIterable: collection.Iterable[A]

Возвращает эту итерируемую коллекцию как итерируемую коллекцию.

Новая коллекция не будет построена; ленивые коллекции останутся ленивыми.

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

возвращает

объект Iterable, содержащий все элементы этой итерируемой коллекции.

Определяющие классы
IterableLike → TraversableOnce → GenTraversableOnce

def toIterator: Iterator[A]

Возвращает итератор по элементам в этой итерируемой коллекции. Возвращает тот же результат, что и iterator.

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

возвращает

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

Определяющие классы
IterableLike → TraversableLike → GenTraversableOnce
Аннотации
@deprecatedOverriding( message = ... , since = "2.11.0" )

def toList: List[A]

Преобразует это обобщенное множество или итератор в список.

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

возвращает

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

Определяющие классы
TraversableOnce → GenTraversableOnce

def toMap[T, U]: collection.Map[T, U]

[пример использования]

Преобразует этот буфер в карту. Этот метод недоступен, если элементы не являются членами Tuple2, каждое ((T, U)) становится парой ключ-значение в карте. Дубликаты ключей будут перезаписаны последующими ключами: если это неупорядоченная коллекция, ключ, находящийся в результирующей карте, не определен.

возвращает

карта типа immutable.Map[T, U], содержащая все пары ключ/значение типа (T, U) этого буфера.

Определяющие классы
TraversableOnce → GenTraversableOnce
Полная подпись

def toParArray: ParArray[T]

Неявный
Этот член добавляется неявным преобразованием из AbstractBuffer[A] в CollectionsHaveToParArray[AbstractBuffer[A], T] выполняемого методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование будет выполнено только в том случае, если в области действия находится неявное значение типа (AbstractBuffer[A]) ⇒ GenTraversableOnce[T].
Определяющие классы
CollectionsHaveToParArray

def toSeq: collection.Seq[A]

Преобразует эту последовательность в последовательность.

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

Новая коллекция не будет построена; в частности, ленивые последовательности останутся ленивыми.

возвращает

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

Определяющие классы
SeqLike → GenSeqLike → TraversableOnce → GenTraversableOnce

def toSet[B >: A]: immutable.Set[B]

Преобразует это обобщенное множество или итератор в множество.

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

возвращает

множество, содержащее все элементы этого обобщенного множества или итератора.

Определяющие классы
TraversableOnce → GenTraversableOnce

def toStream: immutable.Stream[A]

Преобразует это итерируемое множество в поток.

возвращает

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

Определяющие классы
IterableLike → TraversableLike → GenTraversableOnce

def toString(): String

Преобразует эту последовательность в строку.

возвращает

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

Определяющие классы
SeqLike → TraversableLike → Any

def toTraversable: collection.Traversable[A]

Преобразует это итерируемое множество в неуказанное множество Traversable. Возвратит то же самое множество, если этот экземпляр уже является Traversable.

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

возвращает

множество Traversable, содержащее все элементы этого итерируемого множества.

Определяющие классы
TraversableLike → TraversableOnce → GenTraversableOnce
Аннотации
@deprecatedOverriding( message = ... , since = "2.11.0" )

def toVector: Vector[A]

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

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

возвращает

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

Определяющие классы
TraversableOnce → GenTraversableOnce

def transform(f: (A) ⇒ A): AbstractBuffer.this.type

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

f

применяемое преобразование

возвращает

сама последовательность.

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

def transpose[B](implicit asTraversable: (A) ⇒ GenTraversableOnce[B]): Buffer[Buffer[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 trimEnd(n: Int): Unit

Удаляет последние n элементов этого буфера.

n

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

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

def trimStart(n: Int): Unit

Удаляет первые n элементов этого буфера.

n

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

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

def union(that: collection.Seq[A]): Buffer[A]

[use case]

Создает новую последовательность, которая содержит все элементы этого буфера, а также все элементы заданной последовательности. xs union ys эквивалентно xs ++ ys.

Другой способ выразить это заключается в том, что xs union ys вычисляет сохраняющую порядок объединение множеств xs и ys. union следовательно, является аналогом diff и intersect, которые также работают с множествами.

that

последовательность для добавления.

возвращает

новый буфер, содержащий все элементы этого буфера, за которыми следуют все элементы that.

Определяющие классы
SeqLike → GenSeqLike
Полная сигнатура

def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (Buffer[A1], Buffer[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)): (Buffer[A1], Buffer[A2], Buffer[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 updated(index: Int, elem: A): Buffer[A]

[use case]

Копия этого буфера с одним заменённым элементом.

index

позиция замены

elem

элемент замены

returns

копия этого буфера с элементом в позиции index заменённым на elem.

Definition Classes
SeqLike → GenSeqLike
Полная сигнатура

def view(from: Int, until: Int): SeqView[A, Buffer[A]]

Создаёт нестрогий вид фрагмента этой последовательности.

Примечание: разница между view и slice заключается в том, что view создаёт вид текущей последовательности, а slice создаёт новую последовательность.

Примечание: view(from, to) эквивалентно view.slice(from, to).

from

индекс первого элемента вида

until

индекс элемента, следующего за видом

returns

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

Definition Classes
SeqLike → IterableLike → TraversableLike

def view: SeqView[A, Buffer[A]]

Создаёт нестрогий вид этой последовательности.

returns

нестрогий вид этой последовательности.

Definition Classes
SeqLike → IterableLike → 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

Definition Classes
AnyRef
Annotations
@throws( ... ) @native()

def withFilter(p: (A) ⇒ Boolean): FilterMonadic[A, Buffer[A]]

Создаёт нестрогий фильтр этого коллектора.

Примечание: разница между c filter p и c withFilter p заключается в том, что первый создаёт новый коллектор, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.

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

p

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

returns

объект класса WithFilter, который поддерживает map, flatMap, foreach, и withFilter операции. Все эти операции применяются к тем элементам этого коллектора, которые удовлетворяют предикату p.

Definition Classes
TraversableLike → FilterMonadic

def zip[B](that: GenIterable[B]): Buffer[(A, B)]

[use case]

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

B

тип второй половины возвращаемых пар

that

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

returns

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

Definition Classes
IterableLike → GenIterableLike
Полная подпись

def zipAll[B](that: collection.Iterable[B], thisElem: A, thatElem: B): Buffer[(A, B)]

[use case]

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

B

тип второй половины возвращаемых пар

that

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

thisElem

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

thatElem

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

returns

новый буфер, содержащий пары, состоящие из соответствующих элементов этого буфера и that. Длина возвращаемого коллектора является максимальной из длин этого буфера и that. Если этот буфер короче that, значения thisElem используются для заполнения результата. Если that короче этого буфера, значения thatElem используются для заполнения результата.

Definition Classes
IterableLike → GenIterableLike
Полная подпись

def zipWithIndex: Buffer[(A, Int)]

[use case]

Объединяет этот буфер с его индексами.

returns

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

Definition Classes
IterableLike → GenIterableLike
Полная подпись
Пример:

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

def →[B](y: B): (AbstractBuffer[A], B)

Неявный
Этот член добавлен неявным преобразованием из AbstractBuffer[A] в ArrowAssoc[AbstractBuffer[A]] выполненное методом ArrowAssoc в scala.Predef.
Definition Classes
ArrowAssoc

Затенённые неявные члены значения

def filter(p: (A) ⇒ Boolean): TraversableOnce[A]

Неявный
Этот член добавлен посредством неявного преобразования из AbstractBuffer[A] в MonadOps[A], выполненного методом MonadOps в scala.collection.TraversableOnce.
Затенение
Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(abstractBuffer: MonadOps[A]).filter(p)
Классы определений
MonadOps

def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]

Неявный
Этот член добавлен посредством неявного преобразования из AbstractBuffer[A] в MonadOps[A], выполненного методом MonadOps в scala.collection.TraversableOnce.
Затенение
Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(abstractBuffer: MonadOps[A]).flatMap(f)
Классы определений
MonadOps

def map[B](f: (A) ⇒ B): TraversableOnce[B]

Неявный
Этот член добавлен посредством неявного преобразования из AbstractBuffer[A] в MonadOps[A], выполненного методом MonadOps в scala.collection.TraversableOnce.
Затенение
Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(abstractBuffer: MonadOps[A]).map(f)
Классы определений
MonadOps

def withFilter(p: (A) ⇒ Boolean): Iterator[A]

Неявный
Этот член добавлен посредством неявного преобразования из AbstractBuffer[A] в MonadOps[A], выполненного методом MonadOps в scala.collection.TraversableOnce.
Затенение
Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(abstractBuffer: 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/mutable/AbstractBuffer.html

Spec-Zone.ru

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