Класс scala.collection.mutable.UnrolledBuffer
@SerialVersionUID(3L)
sealed class UnrolledBuffer[T](implicit val tag: ClassTag[T]) extends AbstractBuffer[T] with Buffer[T] with Seq[T] with SeqOps[T, UnrolledBuffer, UnrolledBuffer[T]] with StrictOptimizedSeqOps[T, UnrolledBuffer, UnrolledBuffer[T]] with EvidenceIterableFactoryDefaults[T, UnrolledBuffer, ClassTag] with Builder[T, UnrolledBuffer[T]] with DefaultSerializable
Буфер, хранящий элементы в списке, объединённом в блоки.
Списки, объединённые в блоки, хранят элементы в связанных массивах фиксированного размера.
Буферы, объединённые в блоки, сохраняют локальность и низкую нагрузку на память, характерные для буферов массивов, но предлагают гораздо более эффективное добавление элементов, поскольку они никогда не перераспределяют и не копируют внутренний массив.
Однако они предоставляют сложность случайного доступа O(n/m), где n — количество элементов, а m — размер блоков внутреннего массива.
Идеально использовать, когда: - элементы добавляются в буфер, а затем все элементы обрабатываются последовательно - два буфера, объединённых в блоки, необходимо объединить (см. concat)
Лучше, чем односвязные списки для случайного доступа, но всё же следует избегать их использования для этой цели.
| Типы-супертипы | 32 типа |
|---|
Конкретные методы
Исходный код
def addOne(elem: T): UnrolledBuffer[T]
Исходный код
Исходный код
def classTagCompanion: UnrolledBuffer.type
Исходный код
Исходный код
override def clone(): UnrolledBuffer[T]
| Классы определения | SeqOps -> Cloneable -> Object |
|---|
Исходный код
Объединяет целевой буфер, объединённый в блоки, с этим буфером, объединённым в блоки.
Указанный буфер that очищается после этой операции. Это операция O(1).
| Параметры значений |
|
|---|
Исходный код
| Классы определения | IterableOnceOps |
|---|
Исходный код
Исходный код
Исходный код
| Классы определения | Buffer -> Seq -> Iterable -> Seq -> Iterable -> IterableOps |
|---|
Исходный код
Исходный код
| Классы определения | Buffer -> Growable -> IterableOnce |
|---|
Исходный код
Исходный код
def mapInPlace(f: T => T): UnrolledBuffer[T]
Исходный код
Источник
def prepend(elem: T): UnrolledBuffer[T]
Источник
Источник@tailrec
Источник
def result(): UnrolledBuffer[T]
Источник
override def subtractOne(elem: T): UnrolledBuffer[T]
| Классы-определения | Буфер -> Сжимаемый |
|---|
Источник
Наследованные методы
Источник@inline
Псевдоним для concat
| Наследованный из | IterableOps |
|---|
Источник@inline
Псевдоним для prependedAll
| Классы-определения | SeqOps -> IterableOps |
|---|---|
| Наследованный из | SeqOps |
Источник@inline
Псевдоним для addAll
| Наследованный из | Growable |
|---|
Источник@inline
Псевдоним для prependAll
| Наследованный из | Буфер |
|---|
Источник@inline
final def +:[B >: T](elem: B): UnrolledBuffer[B]
Псевдоним для prepended. Обратите внимание, что операторы с окончанием :- являются правоассоциативными (см. пример). Мемоника для +: против :+: двоеточие ставится с той стороны, к которой относится коллекция.
| Наследованный из | SeqOps |
|---|
Источник@inline
final def +=(elem: T): UnrolledBuffer[T]
Псевдоним для addOne
| Наследованный из | Growable |
|---|
Источник@inline
final def +=:(elem: T): UnrolledBuffer[T]
Псевдоним для prepend
| Наследованный из | Буфер |
|---|
Источник@inline
Псевдоним для subtractAll
| Наследованный из | Сжимаемый |
|---|
Источник@inline
final def -=(elem: T): UnrolledBuffer[T]
Псевдоним для subtractOne
| Наследованный из | Сжимаемый |
|---|
Источник@inline
final def :+[B >: T](elem: B): UnrolledBuffer[B]
Псевдоним для appended. Обратите внимание, что операторы с окончанием :- являются правоассоциативными (см. пример). Мемоника для +: против :+: двоеточие ставится с той стороны, к которой относится коллекция.
| Наследованный из | SeqOps |
|---|
Источник@inline
Псевдоним для appendedAll
| Наследованный из | SeqOps |
|---|
Источник
Добавляет все элементы, созданные IterableOnce, в эту коллекцию.
| Параметры |
|
|---|---|
| Возвращаемое значение | сама коллекция. |
| Наследованный из | Growable |
Источник@inline
Добавляет все элементы этой коллекции в строковый билдер. Записываемый текст состоит из строковых представлений (относительно метода 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
| Параметры |
|
|---|---|
| Возвращаемое значение | строковый билдер |
| Наследованный из | IterableOnceOps |
Источник@inline
Добавляет все элементы этой коллекции в строковый билдер с помощью разделителя. Записываемый текст состоит из строковых представлений (относительно метода 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
| Параметры значения |
|
|---|---|
| Возвращаемое значение | строка-построитель |
| Унаследовано от | IterableOnceOps |
Исходный код
Добавляет все элементы этого набора в строку-построитель с использованием начальной, конечной и разделительной строк. Текст, который записывается, начинается со строки 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)
| Параметры значения |
|
|---|---|
| Возвращаемое значение | строка-построитель |
| Унаследовано от | IterableOnceOps |
Исходный код
Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить её побочные эффекты. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Исходный код
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип функции во время выполнения является PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | частичная функция с областью определения этой частичной функции, возможно, суженной указанной функцией, которая отображает аргументы |
| Классы определений | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Исходный код@inline
final def append(elem: T): UnrolledBuffer[T]
Добавляет заданные элементы в этот буфер.
| Параметры значения |
|
|---|---|
| Унаследовано от | Buffer |
Исходный код@inline
Добавляет элементы, содержащиеся в итерируемом объекте, в этот буфер.
| Параметры значения |
|
|---|---|
| Унаследовано от | Buffer |
Исходный код
override def appended[B >: T](elem: B): UnrolledBuffer[B]
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
def applyOrElse[A1 <: Int, B1 >: T](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. Это может привести к лучшей производительности и более предсказуемому поведению с точки зрения побочных эффектов.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | результат применения этой функции или функции по умолчанию. |
| Унаследовано от | PartialFunction |
Исходный код
| Унаследовано от | Seq |
|---|
Исходный код
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Находит первый элемент набора, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для наборов бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | значение варианта, содержащее pf, применённое к первому значению, для которого оно определено, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Итерируется по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке. Таким образом, "xy" и "yy" — обе комбинации длины 2 из "xyy", но "yx" — нет. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращена только одна.
Например, "xyyy" имеет три различных способа сгенерировать "xy" в зависимости от того, какой элемент — первый, второй или третий "y" — был выбран. Однако, поскольку все они идентичны, будет выбран только один. Какой из трёх будет выбран, является деталью реализации, которая не определена.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут форсированы.
| Возвращаемое значение | Итератор, который проходит по возможным n-элементным комбинациям этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Исходный код
Компонует другую частичную функцию k с этой частичной функцией, так что эта частичная функция применяется к результатам k.
Обратите внимание, что вызов isDefinedAt на полученной частичной функции может применить первую частичную функцию и выполнить её побочное действие. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | частичная функция с областью определения другой частичной функции, суженной с помощью этой частичной функции, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Исходный код@unspecialized
Компонует два экземпляра Function1 в новую Function1, с этой функцией, применённой последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая функция |
| Унаследовано от | Function1 |
Исходный код@inline
| Классы определения | SeqOps -> IterableOps |
|---|---|
| Унаследовано от | SeqOps |
Исходный код
Проверяет, содержит ли эта последовательность заданное значение в качестве элемента.
Примечание: может не завершаться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | SeqOps |
Исходный код
Проверяет, содержит ли эта последовательность заданную последовательность как срез.
Примечание: может не завершаться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | SeqOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование остановится, как только будут скопированы все элементы этой коллекции, или достигнут конец массива, или len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование неопределено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование остановится, как только будут скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование неопределено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование остановится, как только будут скопированы все элементы этой коллекции или достигнут конец массива.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Использование итератора неопределенно и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя условию предиката.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент этой последовательности соответствующему элементу другой последовательности, удовлетворяя условию предиката.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Подсчитывает количество элементов в наборе, удовлетворяющих предикату.
Примечание: не завершится для наборов бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Источник
| Классы-предки | StrictOptimizedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | StrictOptimizedSeqOps |
Источник
def distinct: UnrolledBuffer[T]
Выбирает все элементы этой последовательности, игнорируя дубликаты.
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
|---|---|
| Унаследовано от | SeqOps |
Источник
override def distinctBy[B](f: T => B): UnrolledBuffer[T]
| Классы-предки | StrictOptimizedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | StrictOptimizedSeqOps |
Источник
| Унаследовано от | IterableOps |
|---|
Source
| Унаследованно от | Buffer |
|---|
Source
Остальная часть коллекции без её n последних элементов. Для линейных неизменяемых коллекций это должно предотвратить создание копии.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследованно от | StrictOptimizedIterableOps |
Source
| Унаследованно от | Buffer |
|---|
Source
| Унаследованно от | IterableOps |
|---|
Source
| Унаследованно от | Buffer |
|---|
Source
Возвращает объект-экстрактор с методом unapplySeq, который извлекает каждый элемент данных последовательности.
| Пример |
val firstChar: String => Option[Char] = _.headOption
Seq("foo", "bar", "baz") match {
case firstChar.unlift.elementWise(c0, c1, c2) =>
println(s"$c0, $c1, $c2") // Output: f, b, b
}
|
|---|---|
| Унаследованно от | PartialFunction |
Source
override def empty: UnrolledBuffer[T]
| Классы-предки | EvidenceIterableFactoryDefaults -> IterableOps |
|---|---|
| Унаследованно от | EvidenceIterableFactoryDefaults |
Source
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не будет завершаться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследованно от | SeqOps |
Source
| Definition Classes | Seq -> Equals -> Any |
|---|---|
| Inherited from | Seq |
Source
Проверяет, выполняется ли предикат для хотя бы одного элемента этого набора.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
Находит первый элемент в коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение опции, содержащее первый элемент в коллекции, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Source
Находит последний элемент последовательности, удовлетворяющий предикату, если таковой имеется.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | значение опции, содержащее последний элемент в последовательности, удовлетворяющий |
| Унаследовано от | SeqOps |
Source
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
def fold[A1 >: T](z: A1)(op: (A1, A1) => A1): A1
Производит свёртку элементов этого набора с помощью заданного ассоциативного бинарного оператора. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат применения оператора свёртки |
| Унаследовано от | IterableOnceOps |
Source
def foldLeft[B](z: B)(op: (B, T) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этого набора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Source
def foldRight[B](z: B)(op: (T, B) => B): B
Применяет бинарный оператор ко всем элементам этого набора и начальному значению, справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Исходный код
| Классы определения | EvidenceIterableFactoryDefaults -> IterableOps |
|---|---|
| Унаследовано от | EvidenceIterableFactoryDefaults |
Исходный код
Разбивает этот итерируемый набор на карту итерируемых наборов в соответствии с некоторой функцией дискриминатора.
Примечание: даже при применении к представлению или ленивому набору он всегда принуждает элементы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
Карта от ключей к итерируемым наборам, которая удовлетворяет следующему инварианту: (xs groupBy f)(k) = xs filter (x => f(x) == k) То есть каждый ключ |
| Унаследовано от | IterableOps |
Исходный код
Разбивает этот итерируемый набор на карту итерируемых наборов в соответствии с функцией дискриминатора key. Каждый элемент в группе преобразуется в значение типа B с помощью функции value.
Эквивалентно groupBy(key).mapValues(_.map(f)), но более эффективно.
case class User(name: String, age: Int) def namesByAge(users: Seq[User]): Map[Int, Seq[String]] = users.groupMap(_.age)(_.name)
Примечание: даже при применении к представлению или ленивому набору он всегда принуждает элементы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Унаследовано от | IterableOps |
Исходный код
def groupMapReduce[K, B](key: T => K)(f: T => B)(reduce: (B, B) => B): Map[K, B]
Разбивает этот итерируемый набор на карту в соответствии с функцией дискриминатора key. Все значения, имеющие одинаковый дискриминатор, затем преобразуются функцией f и затем сводятся к одному значению с помощью функции reduce.
Эквивалентно groupBy(key).mapValues(_.map(f).reduce(reduce)), но более эффективно.
def occurrences[A](as: Seq[A]): Map[A, Int] = as.groupMapReduce(identity)(_ => 1)(_ + _)
Примечание: даже при применении к представлению или ленивому набору он всегда принуждает элементы.
| Унаследовано от | IterableOps |
|---|
Исходный код
Разделяет элементы на итерируемые наборы фиксированного размера.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Унаследовано от | IterableOps |
Исходный код
| Классы определения | Seq -> Any |
|---|---|
| Унаследовано от | Seq |
Исходный код
def head: T
Выбирает первый элемент этого итерируемого набора.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не является упорядоченным.
| Возвращает | первый элемент этого итерируемого набора. |
|---|---|
| Выбрасывает |
|
| Унаследовано от | IterableOps |
Исходный код
def headOption: Option[T]
Возможно выбирает первый элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не является упорядоченным.
| Возвращает | первый элемент этого итерируемого набора, если он непустой, |
|---|---|
| Унаследовано от | IterableOps |
Исходный код@deprecatedOverriding("Override indexOf(elem, from) instead - indexOf(elem) calls indexOf(elem, 0)", "2.13.0")
Находит индекс первого вхождения некоторого значения в эту последовательность.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Исходный код
Находит индекс первого вхождения некоторого значения в этой последовательности после или на определённом стартовом индексе.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Исходный код@deprecatedOverriding("Override indexOfSlice(that, from) instead - indexOfSlice(that) calls indexOfSlice(that, 0)", "2.13.0")
Находит первый индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: может не завершаться для последовательностей бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс после или на стартовом индексе, где эта последовательность содержит заданную последовательность в виде фрагмента.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source@deprecatedOverriding("Override indexWhere(p, from) instead - indexWhere(p) calls indexWhere(p, 0)", "2.13.0")
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на каком-либо стартовом индексе.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Создаёт диапазон всех индексов этой последовательности.
Примечание: даже при применении к представлению или ленивой коллекции она всегда принуждает элементы.
| Возвращает | значение |
|---|---|
| Унаследовано от | SeqOps |
Source
def init: UnrolledBuffer[T]
Начальная часть коллекции без последнего элемента.
Примечание: даже при применении к представлению или ленивой коллекции она всегда принуждает элементы.
| Унаследовано от | IterableOps |
|---|
Source
Итерируется по начальным частям этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результаты последовательных применений init.
Примечание: даже при применении к представлению или ленивой коллекции она всегда принуждает элементы.
| Возвращает | итератор по всем начальным частям этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Source
| Классы определения | StrictOptimizedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | StrictOptimizedSeqOps |
Source
Проверяет, содержит ли эта последовательность указанный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
| Параметры значений |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Source
| Классы определения | SeqOps -> IterableOnceOps |
|---|---|
| Унаследовано от | SeqOps |
Source
override def isTraversableAgain: Boolean
| Классы определения | IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | IterableOps |
Source
def last: T
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | Последний элемент этой итерируемой коллекции. |
|---|---|
| Исключения |
|
| Унаследовано от | IterableOps |
Source
Находит индекс последнего вхождения некоторого значения в этой последовательности перед или на заданном конечном индексе.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source@deprecatedOverriding("Override lastIndexOfSlice(that, end) instead - lastIndexOfSlice(that) calls lastIndexOfSlice(that, Int.MaxValue)", "2.13.0")
Находит последний индекс, где эта последовательность содержит заданную последовательность в виде фрагмента.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает | последний индекс, такой что элементы этой последовательности, начинающиеся с этого индекса, соответствуют элементам последовательности |
| Унаследовано от | SeqOps |
Source
Находит последний индекс перед или на заданном индексе конца, где эта последовательность содержит заданную последовательность как срез.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс |
| Унаследовано от | SeqOps |
Source@deprecatedOverriding("Override lastIndexWhere(p, end) instead - lastIndexWhere(p) calls lastIndexWhere(p, Int.MaxValue)", "2.13.0")
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс последнего элемента этой последовательности, удовлетворяющего предикату |
| Унаследовано от | SeqOps |
Source
Находит индекс последнего элемента, удовлетворяющего некоторому предикату перед или на заданном индексе конца.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
def lastOption: Option[T]
Необязательно выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | последний элемент этой итерабельной коллекции$ если она непустая, |
|---|---|
| Унаследовано от | IterableOps |
Source
Аналогично zip за исключением того, что элементы в каждой коллекции не потребляются до тех пор, пока на возвращенном LazyZip2 декораторе не будет вызвана строгая операция.
Вызовы lazyZip могут быть объединены для поддержки более высоких арностей (до 4), не затрачивая ресурсов на создание и деконструкцию промежуточных кортежей.
val xs = List(1, 2, 3) val res = (xs lazyZip xs lazyZip xs lazyZip xs).map((a, b, c, d) => a + b + c + d) // res == List(4, 8, 12)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | декоратор |
| Унаследовано от | Iterable |
Source
Сравнивает длину этой последовательности с размером другой Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < that.size x == 0 if this.length == that.size x > 0 if this.length > that.size Метод, как он реализован здесь, не вызывает |
| Унаследовано от | SeqOps |
Source
Сравнивает длину этой последовательности со значением теста.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len Метод, как он реализован здесь, не вызывает |
| См. также | |
| Унаследовано от | SeqOps |
Source@inline
final def lengthIs: SizeCompareOps
Возвращает экземпляр класса-значения, содержащий операции для сравнения длины этой последовательности со значением теста.
Эти операции реализованы с помощью lengthCompare(Int) и позволяют использовать следующие более читаемые выражения:
this.lengthIs < len // this.lengthCompare(len) < 0 this.lengthIs <= len // this.lengthCompare(len) <= 0 this.lengthIs == len // this.lengthCompare(len) == 0 this.lengthIs != len // this.lengthCompare(len) != 0 this.lengthIs >= len // this.lengthCompare(len) >= 0 this.lengthIs > len // this.lengthCompare(len) > 0
| Унаследовано от | SeqOps |
|---|
Source
Преобразует эту частичную функцию в простую функцию, возвращающую результат Option.
| Возвращает | функцию, принимающую аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Source
override def map[B](f: T => B): UnrolledBuffer[B]
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
Построитель, полученный из этого построителя, с отображением результата с помощью f.
| Унаследовано от | Builder |
|---|
Source
Находит наибольший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этого набора относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этого набора с наибольшим значением, измеренным функцией f относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа option, содержащее первый элемент этого набора с наибольшим значением, измеренным функцией f относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Источник
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа option, содержащее наибольший элемент этого набора относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этого набора относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа option, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа option, содержащее наименьший элемент этого набора относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Источник@inline
Отображает все элементы этого набора в строке.
Делегирует addString, который может быть переопределен.
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с помощью метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник@inline
Отображает все элементы этого набора в строке с использованием разделительной строки.
Делегирует addString, который может быть переопределен.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с помощью метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этого набора в строке с использованием начальной, конечной и разделительной строк.
Делегирует addString, который может быть переопределен.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Исходный код
| Классы-определения | EvidenceIterableFactoryDefaults -> IterableOps |
|---|---|
| Унаследовано от | EvidenceIterableFactoryDefaults |
Исходный код@deprecatedOverriding("nonEmpty определен как !isEmpty; переопределите isEmpty вместо этого", "2.13.0")
Проверяет, не пуста ли коллекция.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
Компонует эту частичную функцию с резервной частичной функцией, которая применяется там, где эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, которая имеет в качестве области объединение областей этой частичной функции и |
| Унаследовано от | PartialFunction |
Исходный код
| Классы-определения | StrictOptimizedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
| Унаследовано от | Buffer |
|---|
Исходный код
| Классы-определения | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
| Классы-определения | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Создаёт новую последовательность, где фрагмент элементов в этой последовательности заменяется другой последовательностью.
Замена по отрицательным индексам эквивалентна замене, начинающейся с 0. Замена по индексам, равным или большим длины исходной последовательности, добавляет замену в конец. Если заменяемых значений больше, чем фактически существует, избыток игнорируется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за исключением того, что |
| Унаследовано от | SeqOps |
Исходный код
Итерируется по различным перестановкам.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | Итератор, который проходит по различным перестановкам этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Исходный код
| Унаследовано от | Buffer |
|---|
Исходный код
override def prepended[B >: T](elem: B): UnrolledBuffer[B]
| Классы-определения | StrictOptimizedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
| Классы-определения | StrictOptimizedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
Перемножает элементы этой коллекции.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Источник
def reduce[B >: T](op: (B, B) => B): B
Сводит элементы этого набора используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Результат применения оператора reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceLeft[B >: T](op: (B, T) => B): B
Применяет бинарный оператор ко всем элементам этого набора слева направо.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceLeftOption[B >: T](op: (B, T) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого набора слева направо.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
def reduceOption[B >: T](op: (B, B) => B): Option[B]
Сводит элементы этого набора, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Значение опции, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Источник
def reduceRight[B >: T](op: (T, B) => B): B
Применяет бинарный оператор ко всем элементам этого набора справа налево.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceRightOption[B >: T](op: (T, B) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого набора справа налево.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
def reverse: UnrolledBuffer[T]
Возвращает новый набор с элементами в обратном порядке.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: Даже при применении к представлению или ленивому набору, он всегда принудительно заставляет элементы.
| Возвращает | Новый набор со всеми элементами этого набора в обратном порядке. |
|---|---|
| Унаследовано от | SeqOps |
Источник
def reverseIterator: Iterator[T]
Итератор, возвращающий элементы в обратном порядке.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: xs.reverseIterator эквивалентно xs.reverse.iterator, но может быть более эффективным.
| Возвращает | итератор, возвращающий элементы этого набора в обратном порядке |
|---|---|
| Унаследовано от | SeqOps |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Компонует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализована с помощью applyOrElse и, следовательно, потенциально более эффективна. Использование runWith избегает двойной оценки операторов соответствия шаблонам и условий для литералов частичных функций.
| Параметры значения |
|
|---|---|
| Возвращает | функция, которая отображает аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Источник
Являются ли элементы этого набора такими же (и в том же порядке), как элементы that?
| Унаследовано от | SeqOps |
|---|
Source
def scan[B >: T](z: B)(op: (B, B) => B): UnrolledBuffer[B]
Вычисляет префиксную сортировку элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итеративная коллекция, содержащая префиксную сортировку элементов в этой итеративной коллекции |
| Унаследовано от | IterableOps |
Source
override def scanLeft[B](z: B)(op: (B, T) => B): UnrolledBuffer[B]
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
def scanRight[B](z: B)(op: (T, B) => B): UnrolledBuffer[B]
Создает коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — это последний кумулятивный результат.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Примечание: даже при применении к представлению или ленивой коллекции всегда будет принудительно вычислять элементы.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Унаследовано от | IterableOps |
Source
Поиск в интервале в этой отсортированной последовательности определенного элемента. Если эта последовательность является IndexedSeq, используется бинарный поиск. В противном случае используется линейный поиск.
Последовательность должна быть отсортирована с тем же Ordering перед вызовом; в противном случае результаты не определены.
| Параметры значения |
|
|---|---|
| Возвращает | значение |
| См. также |
scala.collection.SeqOps, метод |
| Примечание | если |
| Унаследовано от | SeqOps |
Source
Поиск в этой отсортированной последовательности определенного элемента. Если последовательность является IndexedSeq, используется бинарный поиск. В противном случае используется линейный поиск.
Последовательность должна быть отсортирована с тем же Ordering перед вызовом; в противном случае результаты не определены.
| Параметры значения |
|
|---|---|
| Возвращает | значение |
| См. также |
scala.collection.SeqOps, метод |
| Унаследовано от | SeqOps |
Source
Вычисляет длину самой длинной последовательности, которая начинается с некоторого индекса и все элементы которой удовлетворяют некоторому предикату.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | длину самой длинной последовательности этой последовательности, начинающейся с индекса |
| Унаследовано от | SeqOps |
Source
Вычисляет длину самой длинной последовательности, которая начинается с первого элемента и все элементы которой удовлетворяют некоторому предикату.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | длину самой длинной последовательности этой последовательности, начинающейся с первого элемента, в которой каждый элемент удовлетворяет предикату |
| Унаследовано от | SeqOps |
Source
| Классы определений | SeqOps -> IterableOnceOps |
|---|---|
| Унаследовано от | SeqOps |
Source
| Классы определений | SeqOps -> IterableOps |
|---|---|
| Унаследовано от | SeqOps |
Source
| Классы определений | SeqOps -> IterableOps |
|---|---|
| Унаследовано от | SeqOps |
Source
Дает подсказку о том, что ожидается, что result этого билдера будет иметь такой же размер, как у заданной коллекции, плюс некоторое смещение. Это обеспечит подсказку только в том случае, если коллекция имеет известный размер. Некоторые классы билдеров оптимизируют свое представление на основе подсказки. Однако реализации билдеров по-прежнему должны работать правильно, даже если подсказка неверна, то есть добавляется другое количество элементов.
| Параметры значения |
|
|---|---|
| Унаследовано от | Builder |
Источник
Указывает предположение о количестве элементов, которые будут добавлены при вызове следующей result. Некоторые классы билдеров оптимизируют свою структуру на основе этого предположения. Однако реализации билдеров по-прежнему должны работать корректно, даже если предположение неверно, то есть добавлено другое количество элементов.
| Параметры значения |
|
|---|---|
| Унаследовано от | Builder |
Источник
Указывает предположение о количестве элементов, которые будут добавлены при вызове следующей result, вместе с верхним пределом, заданным размером другого набора. Некоторые классы билдеров оптимизируют свою структуру на основе этого предположения. Однако реализации билдеров по-прежнему должны работать корректно, даже если предположение неверно, то есть добавлено другое количество элементов.
| Параметры значения |
|
|---|---|
| Унаследовано от | Builder |
Источник@inline
final def sizeIs: SizeCompareOps
Возвращает значение класса, содержащее операции для сравнения размера этой итерируемой коллекции с тестовым значением.
Эти операции реализуются с точки зрения sizeCompare(Int) и позволяют использовать следующие более читаемые варианты:
this.sizeIs < size // this.sizeCompare(size) < 0 this.sizeIs <= size // this.sizeCompare(size) <= 0 this.sizeIs == size // this.sizeCompare(size) == 0 this.sizeIs != size // this.sizeCompare(size) != 0 this.sizeIs >= size // this.sizeCompare(size) >= 0 this.sizeIs > size // this.sizeCompare(size) > 0
| Унаследовано от | IterableOps |
|---|
Источник
| Унаследовано от | IterableOps |
|---|
Источник
| Унаследовано от | Buffer |
|---|
Источник
Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разделения их на части, как это делается в grouped.)
Возвращаемый итератор будет пустым, когда вызывается на пустой коллекции. Последний элемент, который генерирует итератор, может быть меньше размера окна, когда исходная коллекция не исчерпана окном, прежде чем это случится, и её последний элемент не пропускается шагом, предшествующим ему.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разделения их на части, как это делается в grouped.)
Пустая коллекция возвращает пустой итератор, а непустая коллекция, содержащая меньше элементов, чем размер окна, возвращает итератор, который сгенерирует исходную коллекцию как единственный элемент.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Сортирует эту последовательность в соответствии с Ordering, полученным из неявно заданного Ordering с помощью функции преобразования.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут форсироваться.
Сортировка стабильная. То есть элементы, равные (как определено ord.compare), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с порядком, где |
| См. также | |
| Пример |
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)
|
| Унаследовано от | SeqOps |
Источник
Сортирует эту последовательность в соответствии с функцией сравнения.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут форсироваться.
Сортировка стабильная. То есть элементы, равные (как определено lt), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с функцией сравнения |
| Пример |
List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
List("Bob", "John", "Steve", "Tom")
|
| Унаследовано от | SeqOps |
Источник
Сортирует эту последовательность в соответствии с Ordering.
Сортировка стабильная. То есть элементы, равные (как определено ord.compare), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с порядком |
| См. также | scala.math.Ordering Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут форсироваться. |
| Унаследовано от | SeqOps |
Источник
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
| Классы определения | IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | IterableOps |
Источник
Проверяет, содержит ли эта последовательность заданную последовательность в заданном индексе.
Примечание: если и получаемый объект this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Возвращает scala.collection.Stepper для элементов этого набора.
Stepper позволяет создавать Java поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться в качестве итератора, который не упаковывает элементы.
Неявный параметр scala.collection.StepperShape определяет тип возвращаемого Stepper в соответствии с типом элемента этой коллекции.
Для коллекций
Int,Short,ByteилиChar, возвращается scala.collection.IntStepperДля коллекций
DoubleилиFloat, возвращается scala.collection.DoubleStepperДля коллекций
Longвозвращается scala.collection.LongStepperДля любого другого типа элементов возвращается scala.collection.AnyStepper
Обратите внимание, что этот метод переопределяется в подклассах, и тип возвращаемого значения уточняется до S with EfficientSplit, например, scala.collection.IndexedSeqOps.stepper. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Stepper могут быть преобразованы только в последовательные потоки.
| Унаследовано от | IterableOnce |
|---|
Источник
Удаляет все элементы, создаваемые итератором, из этой сжимаемой коллекции.
| Параметры значения |
|
|---|---|
| Возвращает | саму сжимаемую коллекцию |
| Унаследовано от | Shrinkable |
Источник
Суммирует элементы этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумма всех элементов этой коллекции относительно операции |
| Унаследовано от | IterableOnceOps |
Источник
def tail: UnrolledBuffer[T]
Остальная часть коллекции без её первого элемента.
| Унаследовано от | IterableOps |
|---|
Источник
Итерируется по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результаты последовательных применений tail.
| Возвращает | итератор по всем хвостам этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
| Унаследовано от | IterableOps |
|---|
Источник
| Унаследовано от | Buffer |
|---|
Источник
Коллекция, содержащая последние n элементы этой коллекции.
Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно создавать элементы.
| Классы определения | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
| Унаследовано от | Buffer |
|---|
Источник
Берёт самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не является упорядоченным.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный префикс этой итерируемой коллекции, элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Источник
| Унаследовано от | Buffer |
|---|
Исходный код
override def tapEach[U](f: T => U): UnrolledBuffer[T]
| Классы-определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Используя фабрику коллекций factory, преобразовать эту коллекцию в соответствующее представление для текущего типа элементов A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
Преобразовать коллекцию в массив.
Примечание к реализации: НЕ вызывать Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Исходный код@inline
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
def toIndexedSeq: IndexedSeq[T]
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Возвращает | Эту коллекцию в виде |
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Классы-определения | Seq -> Function1 -> Iterable -> Any |
|---|---|
| Унаследовано от | Seq |
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
Транспонирует эту итерируемую коллекцию итерируемых коллекций в итерируемую коллекцию итерируемых коллекций.
Тип возвращаемой коллекции будет определяться статическим типом итерируемой коллекции. Например:
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))
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | двумерная итерируемая коллекция итерируемых коллекций, в которой n-я строка содержит n-й столбец этой итерируемой коллекции. |
| Исключения |
|
| Унаследовано от | IterableOps |
Исходный код
Попытка извлечь B из A в выражении сопоставления с образцом.
| Унаследовано от | PartialFunction |
|---|
Исходный код
override def unzip[A1, A2](implicit asPair: T => (A1, A2)): (UnrolledBuffer[A1], UnrolledBuffer[A2])
| Классы-определения | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
override def unzip3[A1, A2, A3](implicit asTriple: T => (A1, A2, A3)): (UnrolledBuffer[A1], UnrolledBuffer[A2], UnrolledBuffer[A3])
| Классы-определения | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Копия этого последовательности с заменой одного элемента.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, являющаяся копией этой последовательности с элементом на позиции |
| Исключения |
|
| Унаследовано от | SeqOps |
Исходный код
| Классы-определения | SeqOps -> IterableOps |
|---|---|
| Унаследовано от | SeqOps |
Source
Создаёт нестрогий фильтр этого итерируемого набора.
Примечание: Разница между c filter p и c withFilter p заключается в том, что первый создаёт новый набор, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | объект класса |
| Унаследовано от | IterableOps |
Source
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
Возвращает итерируемый набор, сформированный из этого итерируемого набора и другого итерируемого набора путём объединения соответствующих элементов парами. Если один из двух наборов короче другого, элементы-заполнители используются для расширения более короткого набора до длины более длинного.
| Параметры значения |
|
|---|---|
| Возвращает | новый набор типа |
| Унаследовано от | IterableOps |
Source
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Неявные параметры
Source
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/collection/mutable/UnrolledBuffer.html