Трейт scala.collection.mutable.BufferLike
trait BufferLike[A, +This <: BufferLike[A, This] with Buffer[A]] extends Growable[A] with Shrinkable[A] with Scriptable[A] with Subtractable[A, This] with SeqLike[A, This] with scala.Cloneable
Типовые члены
class WithFilter extends FilterMonadic[A, Repr]
Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.
- Definition Classes
- TraversableLike
type Self = This
Тип, реализующий этот перебираемый объект
- Attributes
- protected[this]
- Definition Classes
- TraversableLike
Члены абстрактного значения
абстрактный def +=(elem: A): BufferLike.this.type
Добавляет один элемент в этот буфер.
- elem
элемент для добавления.
- возвращает
сам буфер
- Определяющие классы
- BufferLike → Growable
абстрактный def +=:(elem: A): BufferLike.this.type
Добавляет один элемент в начало этого буфера.
- elem
элемент для добавления в начало.
- возвращает
сам буфер.
абстрактный 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, содержащая элементы для вставки.
- Исключения
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 newBuilder: Builder[A, This]
Создает новый билдер для этого типа коллекции.
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableLike → HasNewBuilder
абстрактный def remove(n: Int): A
Удаляет элемент по заданному индексу из этого буфера.
- n
индекс, который относится к элементу для удаления.
- возвращает
предыдущий элемент по индексу
n
- Исключения
IndexOutOfBoundsException, если индексnне находится в допустимом диапазоне0 <= n < length.
абстрактный def seq: collection.Seq[A]
- Определяющие классы
- GenSeqLike → Parallelizable → GenTraversableOnce
абстрактный 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
- Неявный
- Этот член добавлен с помощью неявного преобразования из BufferLike[A, This] в any2stringadd[BufferLike[A, This]] с помощью метода any2stringadd в scala.Predef.
- Definition Classes
- any2stringadd
def ++(xs: GenTraversableOnce[A]): This
Создаёт новую коллекцию, содержащую элементы этой коллекции и переданного объекта-обхода.
- xs
объект-обход.
- returns
новая коллекция, состоящая из всех элементов этой коллекции и
xs.
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
++создаёт новый буфер. Используйте++=для добавления элемента из этого буфера и возврата самого буфера.
def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[This, 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[This, 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]
Как и ++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.
Она отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоника: двоеточие находится со стороны нового типа коллекции.
Пример:
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]): BufferLike.this.type
Добавляет все элементы, полученные из TraversableOnce, в эту изменяемую коллекцию.
- xs
TraversableOnce, производящий элементы для добавления.
- возвращает
изменяемую коллекцию.
- Классы-определения
- Growable
def ++=:(xs: TraversableOnce[A]): BufferLike.this.type
Вставляет элементы в начало этого буфера.
- xs
TraversableOnce, содержащий элементы для вставки в начало.
- возвращает
сам буфер.
def +:(elem: A): Buffer[A]
Копия буфера с добавленным элементом в начало.
Обратите внимание, что операторы с окончанием двоеточием являются правоассоциативными (см. пример). Мемоника для +: по сравнению с :+ : двоеточие стоит со стороны коллекции.
Кроме того, исходный буфер не изменяется, поэтому вам необходимо захватить результат.
Пример:
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*): BufferLike.this.type
Добавляет два или более элементов в эту изменяемую коллекцию.
- elem1
первый добавляемый элемент.
- elem2
второй добавляемый элемент.
- elems
остальные добавляемые элементы.
- возвращает
изменяемую коллекцию.
- Классы-определения
- Growable
def -(elem1: A, elem2: A, elems: A*): This
Создаёт новую коллекцию, содержащую все элементы этой коллекции, кроме указанных двух или более элементов.
- elem1
первый удаляемый элемент.
- elem2
второй удаляемый элемент.
- elems
остальные удаляемые элементы.
- возвращает
новую коллекцию, состоящую из всех элементов этой коллекции, кроме
elem1,elem2и тех, что вelems.
- Классы-определения
- BufferLike → Subtractable
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.8.0)
-создаёт новый буфер. Используйте-=для удаления элемента из этого буфера и возвращения самого буфера.
def -(elem: A): This
Создаёт новую коллекцию, содержащую все элементы этой коллекции, кроме указанного элемента.
- elem
удаляемый элемент.
- возвращает
новую коллекцию, состоящую из всех элементов этой коллекции, кроме
elem.
- Классы-определения
- BufferLike → Subtractable
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.8.0)
-создаёт новый буфер. Используйте-=для удаления элемента из этого буфера и возвращения самого буфера.
def --(xs: GenTraversableOnce[A]): This
Создаёт новую коллекцию, содержащую все элементы этой коллекции, кроме элементов, предоставленных указанным перебираемым объектом.
- xs
перебираемый объект.
- возвращает
новую коллекцию, содержащую все элементы этой коллекции, кроме элементов в
xs
- Классы-определения
- BufferLike → Subtractable
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.8.0)
--создаёт новый буфер. Используйте--=для удаления элемента из этого буфера и возвращения самого буфера.
def --=(xs: TraversableOnce[A]): BufferLike.this.type
Удаляет все элементы, созданные итератором, из этого изменяемого набора.
- xs
итератор, создающий элементы для удаления.
- returns
сам изменяемый набор
- Definition Classes
- Shrinkable
def -=(x: A): BufferLike.this.type
Удаляет один элемент из этого буфера, в его первом появлении. Если буфер не содержит этот элемент, он остается неизменным.
- x
элемент для удаления.
- returns
сам буфер
- Definition Classes
- BufferLike → Shrinkable
def -=(elem1: A, elem2: A, elems: A*): BufferLike.this.type
Удаляет два или более элементов из этого изменяемого набора.
- elem1
первый элемент для удаления.
- elem2
второй элемент для удаления.
- elems
оставшиеся элементы для удаления.
- returns
сам изменяемый набор
- Definition Classes
- Shrinkable
def ->[B](y: B): (BufferLike[A, This], B)
- Implicit
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в ArrowAssoc[BufferLike[A, This]] с помощью метода 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]
Копия этого буфера с добавленным элементом.
Мнемоника для +: против :+: COLon находится со стороны 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).
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Определяющие классы
- 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
строка-построитель, в которую добавляются элементы.
- возвращает
строку-построитель
b, в которую были добавлены элементы.
- Определяющие классы
- 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
строка-разделитель.
- возвращает
строку-построитель
b, в которую были добавлены элементы.
- Определяющие классы
- 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
конечная строка.
- возвращает
строку-построитель
b, в которую были добавлены элементы.
- Определяющие классы
- TraversableOnce
def aggregate[B](z: ⇒ B)(seqop: (B, A) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общий вид fold и reduce. Похоже на foldLeft, так как не требует, чтобы результат был супертипом типа элемента. Кроме того, позволяет обрабатывать параллельные коллекции частями и затем объединять промежуточные результаты.
aggregate разбивает перечислимый объект или итератор на разделы и обрабатывает каждый раздел, последовательно применяя seqop, начиная с z (как в foldLeft). Затем эти промежуточные результаты объединяются с помощью combop (как в fold). Реализация этой операции может работать с произвольным количеством разделов коллекции (даже с 1), поэтому combop может быть вызвано произвольным количеством раз (даже 0).
В качестве примера рассмотрим суммирование целых значений из списка символов. Начальное значение для суммы равно 0. Сначала seqop преобразует каждый символ ввода в целое число и добавляет его к сумме (раздела). Затем combop просто суммирует промежуточные результаты разделов:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип аккумулированных результатов
- z
начальное значение для аккумулированного результата раздела - обычно это нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования) и может быть вычислено более одного раза- seqop
оператор, используемый для накопления результатов внутри раздела
- combop
ассоциативный оператор, используемый для объединения результатов из разных разделов
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def append(elems: A*): Unit
Добавляет заданные элементы в этот буфер.
- elems
добавляемые элементы.
def appendAll(xs: TraversableOnce[A]): Unit
Добавляет элементы, содержащиеся в перечислимом объекте, в этот буфер.
- xs
перечислимый объект, содержащий добавляемые элементы.
final def asInstanceOf[T0]: T0
Преобразует объект-получатель к типу T0.
Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания типов в Scala. Поэтому выражение 1.asInstanceOf[String] выбросит исключение ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] не выбросит его. В последнем примере, так как аргумент типа стирается во время компиляции, нельзя проверить, относятся ли элементы списка к требуемому типу.
- возвращает
объект-получатель.
- Определяющие классы
- Any
- Исключения
ClassCastException, если объект-получатель не является экземпляром стирания типаT0.
def canEqual(that: Any): Boolean
Метод, вызываемый из методов равенства, чтобы пользовательские подклассы могли отказываться от равенства с другими коллекциями того же типа.
- that
Объект, с которым должна быть сравнена эта итерируемая коллекция
- returns
true, если эта итерируемая коллекция может быть равнаthat,falseв противном случае. Тест учитывает только типы объектов во время выполнения, но игнорирует их элементы.
- Definition Classes
- IterableLike → Equals
def clone(): This
Возвращает копию этого буфера.
- returns
копию
Bufferс теми же элементами.
- Definition Classes
- BufferLike → Cloneable → AnyRef
def collect[B](pf: PartialFunction[A, B]): Buffer[B]
Создает новую коллекцию, применяя частичную функцию ко всем элементам этого буфера, для которых функция определена.
- B
тип элемента возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и отображает буфер.
- returns
новый буфер, полученный путем применения заданной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент перечислимой последовательности или итератора, для которого заданная частичная функция определена, и применяет к нему частичную функцию.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- pf
частичная функция
- returns
значение Option, содержащее результат применения pf к первому значению, для которого он определён, или
Noneесли такого не существует.
- Definition Classes
- TraversableOnce
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def combinations(n: Int): Iterator[This]
Итерируется по сочетаниям. _Сочетание_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке. Таким образом, "xy" и "yy" — это сочетания длины 2 для "xyy", но "yx" — нет. Если существует более одного способа генерации одной и той же подпоследовательности, будет возвращён только один.
Например, "xyyy" имеет три способа сгенерировать "xy" в зависимости от того, какой элемент — первый, второй или третий "y" — выбран. Однако, так как все они идентичны, будет выбран только один. Какой из трёх будет выбран, является деталью реализации, которая не определена.
- returns
Итератор, который проходит по возможным сочетаниям из n элементов этой последовательности.
- Definition Classes
- SeqLike
"abbbc".combinations(2) = Iterator(ab, ac, bb, bc)
def contains[A1 >: A](elem: A1): Boolean
Проверяет, содержит ли эта последовательность данное значение в качестве элемента.
Примечание: может не завершиться для коллекций бесконечного размера.
- elem
элемент для проверки.
- returns
trueесли в этой последовательности есть элемент, равный (как определено==)elem,falseв противном случае.
- Definition Classes
- SeqLike
def containsSlice[B](that: GenSeq[B]): Boolean
Проверяет, содержит ли эта последовательность данную последовательность в качестве слайса.
Примечание: может не завершиться для коллекций бесконечного размера.
- that
последовательность для проверки
- returns
trueесли эта последовательность содержит срез с теми же элементами, что иthat, в противном случаеfalse.
- Definition Classes
- SeqLike
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этого буфера в массив. Заполняет указанный массив xs не более чем len элементами этого буфера, начиная с позиции start. Копирование завершится, как только будет достигнут конец текущего буфера, или конец целевого массива, или len элементов были скопированы.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество копируемых элементов.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A]): Unit
Копирует элементы этого буфера в массив. Заполняет заданный массив xs значениями этого буфера. Копирование остановится, как только будет достигнут конец текущего буфера или конец целевого массива.
- xs
массив для заполнения.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этого буфера в массив. Заполняет заданный массив xs значениями этого буфера, начиная с индекса start. Копирование остановится, как только будет достигнут конец текущего буфера или конец целевого массива.
- xs
массив для заполнения.
- start
начальный индекс.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: A](dest: Buffer[B]): Unit
Копирует все элементы этого итерируемого объекта или итератора в буфер.
Примечание: не завершится для коллекций бесконечного размера.
- dest
Буфер, в который копируются элементы.
- Definition Classes
- TraversableOnce
def corresponds[B](that: GenSeq[B])(p: (A, B) ⇒ Boolean): Boolean
Проверяет, соответствует ли каждый элемент этой последовательности соответствующему элементу другой последовательности, удовлетворяя предикату проверки.
- B
тип элементов
that- that
другая последовательность
- p
предикат проверки, который связывает элементы из обеих последовательностей
- returns
trueесли обе последовательности имеют одинаковую длину иp(x, y)равноtrueдля всех соответствующих элементовxэтой последовательности иyизthat, в противном случаеfalse.
- Definition Classes
- SeqLike → GenSeqLike
def count(p: (A) ⇒ Boolean): Int
Считает количество элементов в итерируемом объекте или итераторе, которые удовлетворяют предикату.
- p
предикат для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def diff(that: collection.Seq[A]): Buffer[A]
Вычисляет разность между этим буфером и другой последовательностью.
- that
последовательность элементов для удаления
- returns
новый буфер, содержащий все элементы этого буфера, за исключением некоторых вхождений элементов, которые также присутствуют в
that. Если значение элементаxвстречается n раз вthat, то первые n вхожденийxне будут частью результата, но любые последующие вхождения будут.
- Definition Classes
- SeqLike → GenSeqLike
def distinct: This
Создаёт новую последовательность из этой последовательности без дублирующихся элементов.
Примечание: не завершится для коллекций бесконечного размера.
- returns
Новая последовательность, которая содержит первое вхождение каждого элемента этой последовательности.
- Definition Classes
- SeqLike → GenSeqLike
def drop(n: Int): This
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов для удаления из этого итерируемого объекта.
- returns
итерируемый объект, состоящий из всех элементов этого итерируемого объекта, за исключением первых
nэлементов, или пустой итерируемый объект, если в этом итерируемом объекте меньше, чемnэлементов. Еслиnотрицательное, не удалять никаких элементов.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def dropRight(n: Int): This
Выбирает все элементы, кроме последних n.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не является упорядоченным.
- n
Количество элементов для взятия
- возвращает
итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме последних
nэлементов, или пустой итерируемый набор, если этот итерируемый набор содержит меньше чемnэлементов.
- Определяющие классы
- IterableLike
def dropWhile(p: (A) ⇒ Boolean): This
Удаляет самую длинную префиксную часть элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не является упорядоченным.
- возвращает
самый длинный суффикс этого итерируемого набора, первый элемент которого не удовлетворяет предикату
p.
- Определяющие классы
- TraversableLike → GenTraversableLike
def endsWith[B](that: GenSeq[B]): Boolean
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не завершится для бесконечных наборов.
- that
тестируемая последовательность
- возвращает
trueесли эта последовательность заканчивается наthat,falseв противном случае.
- Определяющие классы
- SeqLike → GenSeqLike
def ensuring(cond: (BufferLike[A, This]) ⇒ Boolean, msg: ⇒ Any): BufferLike[A, This]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в Ensuring[BufferLike[A, This]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: (BufferLike[A, This]) ⇒ Boolean): BufferLike[A, This]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в Ensuring[BufferLike[A, This]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): BufferLike[A, This]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в Ensuring[BufferLike[A, This]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean): BufferLike[A, This]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в Ensuring[BufferLike[A, This]] с помощью метода 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): This
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- возвращает
новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые удовлетворяют заданному предикату
p. Порядок элементов сохраняется.
- Определяющие классы
- TraversableLike → GenTraversableLike
def filterNot(p: (A) ⇒ Boolean): This
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- возвращает
новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые не удовлетворяют заданному предикату
p. Порядок элементов сохраняется.
- Определяющие классы
- TraversableLike → GenTraversableLike
def finalize(): Unit
Вызывается сборщиком мусора для объекта-приёмника, когда больше нет ссылок на объект.
Детали времени и факта вызова метода finalize, а также взаимодействия finalize с нелокальными возвратами и исключениями, зависят от платформы.
- Атрибуты
- protected[lang]
- Определяющие классы
- AnyRef
- Аннотации
- @throws( classOf[java.lang.Throwable] )
- Примечание
не указано SLS как член AnyRef
def find(p: (A) ⇒ Boolean): Option[A]
Ищет первый элемент итерируемой коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
- p
предикат, используемый для проверки элементов.
- возвращает
значение типа option, содержащее первый элемент в итерируемой коллекции, удовлетворяющий
p, илиNoneесли такового нет.
- Определяющие классы
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Buffer[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этого буфера и используя элементы полученных коллекций.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип результирующей коллекции определяется статическим типом буфера. Это может иногда приводить к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap (word => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новый буфер, полученный путём применения данной функции, возвращающей коллекцию
f, к каждому элементу этого буфера и конкатенации результатов.
- Определяющие классы
- TraversableLike → GenTraversableLike → FilterMonadic
def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1
Вычисляет результат с использованием заданного ассоциативного бинарного оператора над элементами этой последовательности.
Порядок выполнения операций над элементами не определён и может быть непредсказуемым.
Примечание: не завершит работу для бесконечных коллекций.
- A1
параметр типа для бинарного оператора, надтипом
A.- z
нейтральный элемент для операции свертки; может быть добавлен к результату любое количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора свертки
opмежду всеми элементами иz, илиzесли эта последовательность пуста.
- Определяющие классы
- 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если эта последовательность пуста.
- Определяющие классы
- 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если эта итерируемая коллекция пуста.
- Определяющие классы
- IterableLike → TraversableOnce → GenTraversableOnce
def forall(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этой итерируемой коллекции.
Примечание: может не завершить работу для бесконечных коллекций.
- p
предикат, используемый для проверки элементов.
- returns
trueесли эта итерируемая коллекция пуста или заданный предикатpвыполняется для всех элементов этой итерируемой коллекции, в противном случаеfalse.
- Определяющие классы
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def foreach(f: (A) ⇒ Unit): Unit
Применяет функцию f ко всем элементам этого буфера.
Примечание: этот метод лежит в основе реализации большинства других операций над коллекциями. Подклассы должны переопределять этот метод, если существует более эффективная реализация.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fигнорируется.
- Определяющие классы
- IterableLike → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой format. Формат строк аналогичен String.format (@см. java.lang.String.format).
- Неявное
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в StringFormat[BufferLike[A, This]] при помощи метода StringFormat в scala.Predef.
- Классы-определения
- StringFormat
- Аннотации
- @inline()
final def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- возвращает
объект класса, соответствующий типу получателя во время выполнения.
def groupBy[K](f: (A) ⇒ K): immutable.Map[K, This]
Разделяет это коллекцию итераций на карту коллекций итераций в соответствии с функцией-дискриминатором.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда заставит представление работать и вернёт новую коллекцию итераций.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- возвращает
-
Карта, где ключи сопоставлены с итерационными коллекциями, для которых выполняется следующее инвариантное условие:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kпривязан к итерационной коллекции тех элементовx, для которыхf(x)равноk.
- Классы-определения
- TraversableLike → GenTraversableLike
def grouped(size: Int): Iterator[This]
Разделяет элементы на итерационные коллекции фиксированного размера.
- size
количество элементов в группе
- возвращает
Итератор, производящий итерационные коллекции размером
size, за исключением последней, которая будет меньше sizesize, если элементы не делятся равномерно.
- Классы-определения
- IterableLike
- См. также
scala.collection.Iterator, метод
grouped
def hasDefiniteSize: Boolean
Проверяет, известен ли конечный размер этой коллекции итераций. Все строгие коллекции имеют конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true , если все элементы были вычислены. Он возвращает false , если поток ещё не был вычислен до конца. Непустые итераторы обычно возвращают false , даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с бесконечными коллекциями. Типичным режимом отказа является бесконечный цикл. Эти методы всегда пытаются выполнить итерацию, не проверяя сначала, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер хорошо определён и бесконечность не является проблемой.
- возвращает
true, если для этой коллекции известен конечный размер,falseв противном случае.
- Классы-определения
- TraversableLike → TraversableOnce → GenTraversableOnce
def hashCode(): Int
Хеш-коды для GenSeq производят значение из хеш-кодов всех элементов общей последовательности.
- возвращает
значение хеш-кода для этого объекта.
- Классы-определения
- GenSeqLike → Any
def head: A
Выбирает первый элемент этой итерационной коллекции.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции-основы не упорядочен.
- возвращает
первый элемент этой итерационной коллекции.
- Классы-определения
- IterableLike → TraversableLike → GenTraversableLike
- Исключения
NoSuchElementException, если итерационная коллекция пуста.
def headOption: Option[A]
Возвращает первый элемент, если он существует.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции-основы не упорядочен.
- возвращает
первый элемент этой коллекции итераций, если она непустая,
Noneесли она пустая.
- Классы-определения
- TraversableLike → GenTraversableLike
def indexOf(elem: A, from: Int): Int
Находит индекс первого вхождения некоторого значения в этом буфере после или на некотором начальном индексе.
- elem
значение элемента для поиска.
- from
начальный индекс
- возвращает
индекс
>= fromпервого элемента этого буфера, который равен (как определено==) элементуelem, или-1, если такого элемента нет.
- Классы-определения
- GenSeqLike
def indexOf(elem: A): Int
Находит индекс первого вхождения некоторого значения в этот буфер.
- 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: This
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
коллекция, содержащая все элементы этой коллекции, за исключением последнего.
- Definition Classes
- TraversableLike → GenTraversableLike
- Исключения
UnsupportedOperationException, если коллекция неизменяема.
def inits: Iterator[This]
Итерирует по начальным отрезкам этой коллекции. Первое значение будет этой коллекцией, а последнее — пустой коллекцией, с промежуточными значениями — результатами последовательных применений init.
- returns
итератор по всем начальным отрезкам этой коллекции
- 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
коллекция, содержащая элементы для вставки.
- Исключения
IndexOutOfBoundsException, если индексnне входит в допустимый диапазон0 <= n <= length.
def intersect(that: collection.Seq[A]): Buffer[A]
Вычисляет пересечение мультимножества между этим буфером и другой последовательностью.
- that
последовательность элементов для пересечения.
- возвращает
новый буфер, содержащий все элементы этого буфера, которые также появляются в
that. Если значение элементаxпоявляется n раз вthat, то первые n вхожденийxбудут сохранены в результате, но любые последующие вхождения будут опущены.
- Определяющие классы
- SeqLike → GenSeqLike
def isDefinedAt(idx: Int): Boolean
Проверяет, содержит ли эта общая последовательность заданный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
- idx
индекс для проверки
- возвращает
true, если эта общая последовательность содержит элемент в позицииidx,falseв противном случае.
- Определяющие классы
- 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
Находит индекс последнего вхождения некоторого значения в этом буфере до или на заданном индексе конца.
- elem
значение элемента для поиска.
- end
индекс конца.
- возвращает
индекс
<= endпоследнего элемента этого буфера, который равен (определяется по==)elem, или-1, если такового нет.
- Определяющие классы
- GenSeqLike
def lastIndexOf(elem: A): Int
Находит индекс последнего вхождения некоторого значения в этом буфере.
- 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отсутствует.
- Definition Classes
- SeqLike
def lastIndexWhere(p: (A) ⇒ Boolean, end: Int): Int
Находит индекс последнего элемента, удовлетворяющего некоторому предикату до или на данном индексе конца.
- p
предикат, используемый для проверки элементов.
- возвращает
индекс
<= endпоследнего элемента этой последовательности, удовлетворяющего предикатуp, или-1, если такового нет.
- Definition Classes
- SeqLike → GenSeqLike
def lastIndexWhere(p: (A) ⇒ Boolean): Int
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не будет завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- возвращает
индекс последнего элемента этой общей последовательности, удовлетворяющего предикату
p, или-1, если такового нет.
- Definition Classes
- GenSeqLike
def lastOption: Option[A]
Возвращает последний элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- возвращает
последний элемент этой итерируемой коллекции$, если она не пуста,
Noneесли она пуста.
- Definition Classes
- TraversableLike → GenTraversableLike
def lengthCompare(len: Int): Int
Сравнивает длину этой последовательности со значением теста.
- len
значение теста, которое сравнивается с длиной.
- возвращает
-
Значение
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 map[B](f: (A) ⇒ B): Buffer[B]
Создает новую коллекцию, применяя функцию ко всем элементам этого буфера.
- B
тип элемента возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- возвращает
новый буфер, полученный в результате применения данной функции
fк каждому элементу этого буфера и сбора результатов.
- Definition Classes
- TraversableLike → GenTraversableLike → FilterMonadic
def max: A
Находит наибольший элемент.
- возвращает
наибольший элемент этого буфера.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот буфер пуст.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этого буфера с наибольшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот буфер пуст.
def min: A
Находит наименьший элемент.
- возвращает
наименьший элемент этого буфера
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот буфер пуст.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этого буфера с наименьшим значением, измеренным функцией f.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот буфер пуст.
def mkString: String
Отображает все элементы этого итерируемого объекта или итератора в строке.
- возвращает
строковое представление этого итерируемого объекта или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этого итерируемого объекта или итератора следуют друг за другом без разделительной строки.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этого итерируемого объекта или итератора в строке с использованием разделительной строки.
- sep
разделительная строка.
- возвращает
строковое представление этого итерируемого объекта или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этого итерируемого объекта или итератора разделяются строкойsep.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого итерируемого объекта или итератора в строке с использованием начальной, конечной и разделительной строк.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- возвращает
строковое представление этого итерируемого объекта или итератора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (с помощью методаtoString) всех элементов этого итерируемого объекта или итератора разделяются строкойsep.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Определяющие классы
- AnyRef
def nonEmpty: Boolean
Проверяет, не пуст ли итерируемый объект или итератор.
- возвращает
trueесли итерируемый объект или итератор содержит хотя бы один элемент,falseв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуждает единственную нить, которая ожидает на мониторе объекта-получателя.
- Определяющие классы
- AnyRef
- Аннотации
- @native()
- Примечание
не указано SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все нити, которые ожидают на мониторе объекта-получателя.
- Определяющие классы
- AnyRef
- Аннотации
- @native()
- Примечание
не указано SLS как член AnyRef
def padTo(len: Int, elem: A): Buffer[A]
Копия этого буфера с добавленным значением элемента до тех пор, пока не будет достигнута заданная целевая длина.
- len
целевая длина
- elem
значение заполнения
- возвращает
новый буфер, состоящий из всех элементов этого буфера, за которым следует минимальное количество вхождений
elem, так что результирующий буфер имеет длину не менееlen.
- Определяющие классы
- SeqLike → GenSeqLike
def par: ParSeq[A]
Возвращает параллельную реализацию этого набора.
Для большинства типов наборов этот метод создает новый параллельный набор путем копирования всех элементов. Для этих коллекций par занимает линейное время. Изменяемые наборы в этой категории не создают изменяемый параллельный набор, который имеет тот же базовый набор данных, поэтому изменения в одном наборе не будут отражаться в другом.
Специфические наборы (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельный набор, который использует тот же базовый набор данных. Для этих наборов par занимает постоянное или сублинейное время.
Все параллельные наборы возвращают ссылку на себя.
- возвращает
параллельную реализацию этого набора
- Определяющие классы
- Parallelizable
def parCombiner: Combiner[A, ParSeq[A]]
Реализация по умолчанию par использует комбинатор, предоставленный этим методом, для создания новой параллельной коллекции.
- returns
комбинатор для параллельной коллекции типа
ParRepr
- Attributes
- protected[this]
- Definition Classes
- SeqLike → SeqLike → TraversableLike → Parallelizable
def partition(p: (A) ⇒ Boolean): (This, This)
Разделяет эту коллекцию итераций на две коллекции в соответствии с предикатом.
- p
предикат, по которому происходит разделение.
- returns
пара коллекций итераций: первая коллекция содержит все элементы, удовлетворяющие предикату
p, а вторая — все элементы, которые не удовлетворяют ему. Относительный порядок элементов в результирующих коллекциях такой же, как и в исходной коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
def patch(from: Int, that: GenSeq[A], replaced: Int): Buffer[A]
Создаёт новый буфер, в котором фрагмент элементов в этом буфере заменяется другой последовательностью.
- from
индекс первого заменяемого элемента
- replaced
количество элементов для удаления в исходном буфере
- returns
новый буфер, состоящий из всех элементов этого буфера, за исключением того, что
replacedэлементы, начиная сfrom, заменяются наpatch.
- Definition Classes
- SeqLike → GenSeqLike
def permutations: Iterator[This]
Итерируется по различным перестановкам.
- 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
элементы, которые нужно добавить в начало.
def prependAll(xs: TraversableOnce[A]): Unit
Добавляет элементы, содержащиеся в объекте итерации, в начало этого буфера.
- xs
коллекция, содержащая элементы, которые нужно добавить в начало.
def product: A
Вычисляет произведение элементов этой коллекции.
- returns
произведение всех элементов в этом буфере чисел типа
Int. ВместоInt, может быть использован любой другой типTс неявнойNumeric[T]реализацией в качестве типа элементов буфера и типа возвращаемого значенияproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1
Применяет заданную ассоциативную бинарную операцию к элементам этой коллекции итераций.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
- A1
Тип параметр для бинарной операции, супертип
A.- op
Бинарная операция, которая должна быть ассоциативной.
- returns
Результат применения оператора reduce
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— элементы этого обхода или итератора.
- Определяющие классы
- TraversableOnce
- Выбрасываемые исключения
UnsupportedOperationExceptionесли этот обход или итератор пуст.
def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
Условно применяет бинарный оператор ко всем элементам этого обхода или итератора, слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceLeft(op), если этот обход или итератор не пуст,Noneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]
Сводит элементы этого обхода или итератора, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок, в котором выполняются операции над элементами, не указан и может быть недетерминированным.
- A1
параметр типа для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Необязательное значение, содержащее результат применения оператора reduce
opко всем элементам, если коллекция не пуста, иNoneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def reduceRight[B >: A](op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой итерируемой коллекции, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой итерируемой коллекции, справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn— элементы этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableOnce → GenTraversableOnce
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта итерируемая коллекция пуста.
def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
Условно применяет бинарный оператор ко всем элементам этого обхода или итератора, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceRight(op), если этот обход или итератор не пуст,Noneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def remove(n: Int, count: Int): Unit
Удаляет несколько элементов из заданной позиции индекса. Подклассы BufferLike обычно переопределяют этот метод, чтобы обеспечить лучшую производительность, чем count последовательных вызовов для удаления отдельных элементов remove.
- n
индекс, который ссылается на первый элемент для удаления.
- count
количество элементов для удаления.
- Выбрасываемые исключения
-
IllegalArgumentExceptionеслиcount < 0.IndexOutOfBoundsExceptionесли индексnне находится в допустимом диапазоне0 <= n <= length - count(сcount > 0).
def repr: This
Коллекция типа перебираемой коллекции, лежащей в основе этого объекта TraversableLike. По умолчанию она реализуется как сам объект TraversableLike, но это можно переопределить.
- Definition Classes
- TraversableLike → GenTraversableLike
def reverse: This
Возвращает новую последовательность с элементами в обратном порядке.
Примечание: не завершится для коллекций бесконечного размера.
- 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]
Построение новой коллекции путем применения функции ко всем элементам этого буфера и сбора результатов в обратном порядке.
Примечание: 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 sameElements(that: GenIterable[A]): Boolean
Проверяет, содержит ли другая итерируемая коллекция те же элементы в том же порядке, что и этот буфер.
- that
коллекция для сравнения.
- returns
true, если обе коллекции содержат одни и те же элементы в том же порядке,falseв противном случае.
- Definition Classes
- IterableLike → GenIterableLike
def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[This, B, That]): That
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
- B
тип элементов результирующей коллекции
- That
тип результирующей коллекции
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- cbf
фабрика комбинирующих функций, которая предоставляет комбинирующее средство
- returns
новая перебираемая коллекция, содержащая префиксное сканирование элементов в этой перебираемой коллекции
- Definition Classes
- TraversableLike → GenTraversableLike
def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[This, B, That]): That
Создает коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип лежащей в основе коллекции не является упорядоченным.
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[This, B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Головной элемент коллекции — это последний кумулятивный результат.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatна основе текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0) Поведение
scanRightизменилось. Прежнее поведение можно воспроизвести с помощью scanRight.reverse.
def segmentLength(p: (A) ⇒ Boolean, from: Int): Int
Вычисляет длину самой длинной последовательности элементов, все удовлетворяющих заданному предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат для проверки элементов.
- from
индекс, с которого начинается поиск.
- returns
длину самой длинной последовательности в этом списке, начиная с индекса
from, все элементы которой удовлетворяют предикатуp.
- Definition Classes
- SeqLike → GenSeqLike
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): This
Выбирает интервал элементов. Возвращаемая коллекция состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
итерируемую коллекцию, содержащую элементы, значения индексов которых больше или равны
from, и меньше индексаuntilэтой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def sliding(size: Int, step: Int): Iterator[This]
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" по ним (в отличие от разбиения, как в grouped).
- size
количество элементов в группе
- step
расстояние между первыми элементами последовательных групп
- returns
Итератор, генерирующий итерируемые коллекции размера
size, за исключением последнего элемента (который может быть единственным), который будет усечён, если оставшихся элементов меньше, чемsize.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
sliding
def sliding(size: Int): Iterator[This]
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" по ним (в отличие от разбиения, как в 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]): This
Сортирует эту Seq в соответствии с упорядочением, полученным из преобразования неявного упорядочения с помощью функции преобразования.
- B
целевой тип преобразования
f, и тип, где определено упорядочениеord.- f
функция преобразования, отображающая элементы в другую область
B.- ord
предполагаемое упорядочение в области
B.- returns
последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с упорядочением, где
x < yеслиord.lt(f(x), f(y)).
- Definition Classes
- SeqLike
- См. также
scala.math.Ordering Примечание: не будет завершаться для коллекций бесконечного размера.
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)
def sortWith(lt: (A, A) ⇒ Boolean): This
Сортирует эту последовательность в соответствии с функцией сравнения.
Примечание: не будет завершаться для коллекций бесконечного размера.
Сортировка стабильна. То есть элементы, которые равны (как определено 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]): This
Сортирует эту последовательность в соответствии с упорядочением.
Сортировка стабильна. То есть элементы, которые равны (как определено lt ), сохраняют свой порядок в отсортированной последовательности по отношению к исходному.
- ord
упорядочение, используемое для сравнения элементов.
- returns
последовательность, состоящую из элементов этой последовательности, отсортированных в соответствии с упорядочением
ord.
- Definition Classes
- SeqLike
- См. также
def span(p: (A) ⇒ Boolean): (This, This)
Разделяет эту коллекцию обхода в пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, эффективнее), чем (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
пара, состоящая из самого длинного префикса этой коллекции обхода, элементы которого удовлетворяют
p, и остальная часть этой коллекции обхода.
- Definition Classes
- TraversableLike → GenTraversableLike
def splitAt(n: Int): (This, This)
Разделяет эту коллекцию обхода на две части в заданной позиции. Примечание: 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
Определяет префикс представления этого объекта в формате toString.
- возвращает
строковое представление, которое начинается с результата применения
toStringк этому набору. Если не переопределено, это просто"Buffer".
- Определяющие классы
- BufferLike → TraversableLike → GenTraversableLike
def sum: A
Суммирует элементы этого набора.
- возвращает
сумму всех элементов в этом буфере чисел типа
Int. ВместоInt, может быть использован любой другой типTс неявной реализациейNumeric[T]в качестве типа элементов буфера и типа результатаsum. Примеры таких типов:Long,Float,Double,BigInt.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Определяющие классы
- AnyRef
def tail: This
Выбирает все элементы, кроме первого.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- возвращает
набор элементов этого набора, за исключением первого.
- Определяющие классы
- TraversableLike → GenTraversableLike
- Исключения
java.lang.UnsupportedOperationException, если набор пустой.
def tails: Iterator[This]
Перебирает хвосты этого набора. Первое значение будет этим набором, а последнее — пустым, промежуточные значения — результат последовательного применения tail.
- возвращает
итератор по всем хвостам этого набора
- Определяющие классы
- TraversableLike
List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)
def take(n: Int): This
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- n
количество элементов, которые нужно взять из этого итерируемого набора.
- возвращает
итерируемый набор, содержащий только первые
nэлементов этого итерируемого набора, или весь набор, если в нем меньшеnэлементов. Еслиnотрицательное, возвращает пустой итерируемый набор.
- Определяющие классы
- IterableLike → TraversableLike → GenTraversableLike
def takeRight(n: Int): This
Выбирает последние n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- n
количество элементов для взятия
- возвращает
итерируемый набор, содержащий только последние
nэлементов этого набора, или весь набор, если в нем меньшеnэлементов.
- Определяющие классы
- IterableLike
def takeWhile(p: (A) ⇒ Boolean): This
Возвращает самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- возвращает
наиболее длинный префикс этого итерируемого набора, все элементы которого удовлетворяют предикату
p.
- Определяющие классы
- IterableLike → TraversableLike → GenTraversableLike
def thisCollection: collection.Seq[A]
Базовый набор, рассматриваемый как экземпляр . По умолчанию он реализован как сам объект набора, но это можно переопределить.Seq
- Атрибуты
- protected[this]
- Определяющие классы
- SeqLike → IterableLike → TraversableLike
def to[Col[_]]: Col[A]
Преобразует этот буфер в другой, копируя все элементы.
- Col
Тип набора для построения.
- возвращает
новый набор, содержащий все элементы этого буфера.
- Определяющие классы
- TraversableLike → TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует этот буфер в массив.
- возвращает
массив, содержащий все элементы этого буфера. Для типа элементов этого буфера должен быть доступен
ClassTag.
- Классы определений
- TraversableOnce → GenTraversableOnce
def toBuffer[B >: A]: Buffer[B]
Использует содержимое этого итерируемого объекта или итератора для создания нового изменяемого буфера.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
буфер, содержащий все элементы этого итерируемого объекта или итератора.
- Классы определений
- TraversableOnce → GenTraversableOnce
def toCollection(repr: This): collection.Seq[A]
Преобразование из коллекций типа Repr в объекты . По умолчанию это реализуется как просто приведение типа, но это можно переопределить. Seq
- Атрибуты
- protected[this]
- Классы определений
- SeqLike → IterableLike → TraversableLike
def toIndexedSeq: immutable.IndexedSeq[A]
Преобразует этот итерируемый объект или итератор в индексированную последовательность.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
индексированная последовательность, содержащая все элементы этого итерируемого объекта или итератора.
- Классы определений
- TraversableOnce → GenTraversableOnce
def toIterable: collection.Iterable[A]
Возвращает эту итерируемую коллекцию как итерируемую коллекцию.
Новая коллекция не будет создана; ленивые коллекции останутся ленивыми.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
итерируемый объект, содержащий все элементы этой итерируемой коллекции.
- Классы определений
- 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]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в CollectionsHaveToParArray[BufferLike[A, This], T] выполненное методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование произойдет только в том случае, если неявное значение типа (BufferLike[A, This]) ⇒ 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): BufferLike.this.type
Применяет функцию преобразования ко всем значениям, содержащимся в этой последовательности. Функция преобразования генерирует новые значения из существующих элементов.
- f
преобразование для применения
- возвращает
сама последовательность.
- Классы-определения
- SeqLike
def trimEnd(n: Int): Unit
Удаляет последние n элементов этого буфера.
- n
количество элементов для удаления с конца этого буфера.
def trimStart(n: Int): Unit
Удаляет первые n элементов этого буфера.
- n
количество элементов для удаления с начала этого буфера.
def union(that: collection.Seq[A]): Buffer[A]
Создаёт новую последовательность, содержащую все элементы этого буфера, а также все элементы заданной последовательности. xs union ys эквивалентно xs ++ ys.
Другой способ выразить это в том, что xs union ys вычисляет сохраняющую порядок объединение множеств xs и ys. union поэтому является аналогом diff и intersect, которые также работают с множествами.
- that
последовательность для добавления.
- возвращает
новый буфер, который содержит все элементы этого буфера, за которыми следуют все элементы
that.
- Классы-определения
- SeqLike → GenSeqLike
def updated(index: Int, elem: A): Buffer[A]
A copy of this buffer with one single replaced element.
- index
the position of the replacement
- elem
the replacing element
- returns
a copy of this buffer with the element at position
indexreplaced byelem.
- Definition Classes
- SeqLike → GenSeqLike
def view(from: Int, until: Int): SeqView[A, This]
Creates a non-strict view of a slice of this sequence.
Note: the difference between view and slice is that view produces a view of the current sequence, whereas slice produces a new sequence.
Note: view(from, to) is equivalent to view.slice(from, to)
- from
the index of the first element of the view
- until
the index of the element following the view
- returns
a non-strict view of a slice of this sequence, starting at index
fromand extending up to (but not including) indexuntil.
- Definition Classes
- SeqLike → IterableLike → TraversableLike
def view: SeqView[A, This]
Creates a non-strict view of this sequence.
- returns
a non-strict view of this sequence.
- 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
def withFilter(p: (A) ⇒ Boolean): FilterMonadic[A, This]
Creates a non-strict filter of this traversable collection.
Note: the difference between c filter p and c withFilter p is that the former creates a new collection, whereas the latter only restricts the domain of subsequent map, flatMap, foreach, and withFilter operations.
Note: might return different results for different runs, unless the underlying collection type is ordered.
- p
the predicate used to test elements.
- returns
an object of class
WithFilter, which supportsmap,flatMap,foreach, andwithFilteroperations. All these operations apply to those elements of this traversable collection which satisfy the predicatep.
- Definition Classes
- TraversableLike → FilterMonadic
def zip[B](that: GenIterable[B]): Buffer[(A, B)]
Returns a buffer formed from this buffer and another iterable collection by combining corresponding elements in pairs. If one of the two collections is longer than the other, its remaining elements are ignored.
- B
the type of the second half of the returned pairs
- that
The iterable providing the second half of each result pair
- returns
a new buffer containing pairs consisting of corresponding elements of this buffer and
that. The length of the returned collection is the minimum of the lengths of this buffer andthat.
- Definition Classes
- IterableLike → GenIterableLike
def zipAll[B](that: collection.Iterable[B], thisElem: A, thatElem: B): Buffer[(A, B)]
Возвращает буфер, образованный из этого буфера и другого итерируемого набора, объединяя соответствующие элементы попарно. Если один из двух наборов короче другого, используются заполнители для расширения более короткого набора до длины более длинного.
- B
тип второй половины возвращаемых пар
- that
Итерируемый набор, предоставляющий вторую половину каждой результатной пары
- thisElem
элемент, используемый для заполнения результата, если этот буфер короче
that.- thatElem
элемент, используемый для заполнения результата, если
thatкороче этого буфера.- returns
новый буфер, содержащий пары, состоящие из соответствующих элементов этого буфера и
that. Длина возвращаемого набора — это максимальная длина этого буфера иthat. Если этот буфер корочеthat, значенияthisElemиспользуются для заполнения результата. Еслиthatкороче этого буфера, значенияthatElemиспользуются для заполнения результата.
- Definition Classes
- IterableLike → GenIterableLike
def zipWithIndex: Buffer[(A, Int)]
Объединяет этот буфер с его индексами.
- returns
Новый буфер, содержащий пары, состоящие из всех элементов этого буфера, сопоставленных с их индексом. Индексы начинаются с
0.
- Definition Classes
- IterableLike → GenIterableLike
List("a", "b", "c").zipWithIndex = List(("a", 0), ("b", 1), ("c", 2))
def →[B](y: B): (BufferLike[A, This], B)
- Неявный
- Этот член добавляется неявным преобразованием из BufferLike[A, This] в ArrowAssoc[BufferLike[A, This]] посредством метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
Члены-значения с затемнёнными неявными значениями
def filter(p: (A) ⇒ Boolean): TraversableOnce[A]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в MonadOps[A] посредством метода MonadOps в scala.collection.TraversableOnce.
- Затемнённый
- Этот неявно унаследованный член затемнён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(bufferLike: MonadOps[A]).filter(p)
- Определяющие классы
- MonadOps
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в MonadOps[A] посредством метода MonadOps в scala.collection.TraversableOnce.
- Затемнённый
- Этот неявно унаследованный член затемнён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(bufferLike: MonadOps[A]).flatMap(f)
- Определяющие классы
- MonadOps
def map[B](f: (A) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в MonadOps[A] посредством метода MonadOps в scala.collection.TraversableOnce.
- Затемнённый
- Этот неявно унаследованный член затемнён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(bufferLike: MonadOps[A]).map(f)
- Определяющие классы
- MonadOps
def withFilter(p: (A) ⇒ Boolean): Iterator[A]
- Неявный
- Этот член добавлен неявным преобразованием из BufferLike[A, This] в MonadOps[A] посредством метода MonadOps в scala.collection.TraversableOnce.
- Затемнённый
- Этот неявно унаследованный член затемнён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(bufferLike: 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/BufferLike.html
Шаблонный трейт для буферов типа
Buffer[A].Буферы используются для создания последовательностей элементов инкрементально путем добавления, вставки или вставки новых элементов. Также можно получать доступ к элементам и изменять их в произвольном порядке через индекс элемента в текущей последовательности.
тип элементов буфера
тип самого буфера.
2.8
Этот трейт предоставляет большинство операций с буфером
Bufferнезависимо от его представления. Обычно он наследуется конкретными реализациями буферов. Для реализации конкретного буфера необходимо предоставить реализации следующих методов: