Класс ArrayDeque.ArrayDeque
class ArrayDeque[A] extends AbstractBuffer[A] with IndexedBuffer[A] with IndexedSeqOps[A, ArrayDeque, ArrayDeque[A]] with StrictOptimizedSeqOps[A, ArrayDeque, ArrayDeque[A]] with IterableFactoryDefaults[A, ArrayDeque] with ArrayDequeOps[A, ArrayDeque, ArrayDeque[A]] with Cloneable[ArrayDeque[A]] with DefaultSerializable
Реализация двусторонней очереди, которая использует внутренний изменяемый циклический буфер.
Добавление, вставка, удаление первого элемента, удаление последнего элемента и произвольный доступ (индексированный поиск и индексированная замена) занимают амортизированное постоянное время. В общем случае, удаление и вставка по i-му индексу имеют сложность O(min(i, n-i)), поэтому вставка и удаление с конца/начала быстры.
| Параметры типа |
|
|---|---|
| Примечание | Подклассы должны переопределить защищённый метод |
| Надтипы | 36 типов |
| Известные подтипы |
Конструкторы
Исходный код
Конкретные методы
Исходный код
Добавляет все элементы, полученные от IterableOnce, в эту очередь.
| Параметры |
|
|---|---|
| Возвращает | саму очередь. |
| Определяющие классы | Growable |
Исходный код
def addOne(elem: A): ArrayDeque.this.type
Добавляет один элемент в эту очередь.
| Параметры |
|
|---|---|
| Возвращает | саму очередь |
Исходный код
Получение элемента по указанному индексу. Этот метод предоставляется для удобства в Seq. Не следует полагать, что он эффективен, если у вас IndexedSeq.
Исходный код
Примечание: это не изменяет размер внутренней структуры. Используйте clearAndShrink, если вам нужно изменить размер внутренней структуры
Исходный код
Очищает буфер и уменьшает его до размера @param size
| Возвращает |
|---|
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start не более чем len элементами этой очереди.
Копирование прекратится, когда будут скопированы все элементы этой очереди, или будет достигнут конец массива, или len элементов.
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, должен быть удалён. Его дальнейшее использование неопределённо и может меняться. |
| Определяющие классы | IterableOnceOps |
Исходный код
Исходный код
Вставляет новый элемент в указанный индекс этого буфера.
| Параметры |
|
|---|---|
| Исключения |
|
Source
Вставляет новые элементы в указанный индекс idx. В отличие от метода update, этот метод не заменит существующий элемент новым. Вместо этого он вставит новый элемент в индекс idx.
| Параметры |
|
|---|---|
| Исключения |
|
Source
Проверяет, пуст ли массив дек.
Примечание: Реализации в подклассах, которые не являются многократно итерируемыми, должны позаботиться о том, чтобы не потреблять элементы при вызове isEmpty.
| Возвращает |
|
|---|---|
| Определяющие классы | SeqOps -> IterableOnceOps |
Source
Компаньон-объект этого массива дек, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Определяющие классы | IndexedBuffer -> IndexedSeq -> IndexedSeq -> Buffer -> Seq -> Iterable -> Seq -> Iterable -> IterableOps |
Source
| Возвращает | Количество элементов в этом массиве дек, если его можно вычислить без лишних затрат, -1 в противном случае. Без лишних затрат обычно означает: Не требуется обход коллекции. |
|---|---|
| Определяющие классы | IndexedSeqOps -> Buffer -> Growable -> IterableOnce |
Source
Длина (количество элементов) массива дек. size является псевдонимом для length в коллекциях типа Seq.
Source
def prepend(elem: A): ArrayDeque.this.type
Добавляет один элемент в начало этого массива дек.
| Параметры |
|
|---|---|
| Возвращает | сам массив дек |
Source
| Определяющие классы | Buffer |
|---|
Source
Удаляет элемент по указанному индексу. Время выполнения линейно зависит от размера буфера.
| Параметры |
|
|---|---|
| Исключения |
|
Source
Удаляет элемент по заданному индексу.
| Параметры значения |
|
|---|---|
| Возвращает | элемент, который ранее находился по индексу |
Исходный код
Удаляет все элементы из этого набора и возвращает элементы, опустошая эту структуру данных.
| Возвращает |
|---|
Исходный код
Возвращает все элементы в этом наборе, которые удовлетворяют заданному предикату, и удаляет эти элементы из этого набора.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность всех элементов в очереди, для которых p возвращает true. |
Исходный код
def removeAllReverse(): Seq[A]
Удаляет все элементы из этого набора и возвращает элементы в обратном порядке, опустошая эту структуру данных.
| Возвращает |
|---|
Исходный код
Возвращает первый элемент, который удовлетворяет заданному предикату после или на некотором начальном индексе и удаляет этот элемент из набора.
| Параметры значения |
|
|---|---|
| Возвращает | первый элемент очереди, для которого p возвращает true |
Исходный код
def removeHead(resizeInternalRepr: Boolean): A
Безопасно удаляет первый элемент (выбрасывает исключение при пустом наборе). См. также removeHeadOption()
| Параметры значения |
|
|---|---|
| Возвращает | |
| Исключения |
|
Исходный код
| Параметры значения |
|
|---|---|
| Возвращает |
Исходный код
Возвращает и удаляет все элементы слева в этой очереди, которые удовлетворяют заданному предикату.
| Параметры значения |
|
|---|---|
| Возвращает |
Source
def removeLast(resizeInternalRepr: Boolean): A
Небезопасно удаляет последний элемент (бросает исключение при пустом массиве). Смотрите также removeLastOption()
| Параметры значения |
|
|---|---|
| Возвращает | |
| Выбрасывает |
|
Source
| Параметры значения |
|
|---|---|
| Возвращает |
Source
Возвращает и удаляет все элементы справа из этого очереди, которые удовлетворяют заданному предикату
| Параметры значения |
|
|---|---|
| Возвращает |
Source
Возвращает 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. Для Steppers, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Steppers могут быть преобразованы только в последовательные потоки.
| Классы определений | IndexedSeqOps -> IterableOnce |
|---|
Source
override def subtractOne(elem: A): ArrayDeque.this.type
Удаляет один элемент из этого буфера по первому его вхождению. Если буфер не содержит этот элемент, он не изменяется.
| Параметры значения |
|
|---|---|
| Возвращает | сам буфер |
| Классы определений | Buffer -> Shrinkable |
Source
Преобразовать коллекцию в массив.
Примечание к реализации: НЕ вызывайте Array.from из этого метода.
| Классы определений | IterableOnceOps |
|---|
Source
def trimToSize(): Unit
Уменьшает емкость экземпляра ArrayDeque до текущего размера.
Source
Заменяет элемент по указанному индексу новым значением.
| Параметры значения |
|
|---|---|
| Выбрасывает |
|
Наследованные методы
Source
final def ++[B >: A](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
| Наследованно от | IterableOps |
|---|
Source
final override def ++:[B >: A](prefix: IterableOnce[B]): CC[B]
Псевдоним для prependedAll
| Классы определений | SeqOps -> IterableOps |
|---|---|
| Наследованно от | SeqOps |
Source
Псевдоним для addAll
| Наследованно от | Growable |
|---|
Source
Псевдоним для prependAll
| Наследованно от | Buffer |
|---|
Source
final def +:[B >: A](elem: B): CC[B]
Псевдоним для prepended. Примечание: операторы с окончанием двоеточием являются правоассоциативными (см. пример). Мнемоника для +: vs. :+: двоеточие ставится со стороны коллекции.
| Наследованно от | SeqOps |
|---|
Source
Псевдоним для addOne
| Наследованно от | Growable |
|---|
Source
Псевдоним для prepend
| Наследованно от | Buffer |
|---|
Source
Псевдоним для subtractAll
| Наследованно от | Shrinkable |
|---|
Source
final def -=(elem: A): Shrinkable.this.type
Псевдоним для subtractOne
| Наследованно от | Shrinkable |
|---|
Source
final def :+[B >: A](elem: B): CC[B]
Псевдоним для appended
Обратите внимание, что операторы с окончанием «:-» являются правоассоциативными (см. пример). Мнемоника для +: по сравнению с :+ такова: двоеточие ставится со стороны коллекции.
| Унаследовано от | SeqOps |
|---|
Источник
final def :++[B >: A](suffix: IterableOnce[B]): CC[B]
Псевдоним для appendedAll
| Унаследовано от | SeqOps |
|---|
Источник
Добавляет все элементы этой коллекции в строковый буфер. Записываемый текст состоит из строковых представлений (относительно метода 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 |
Источник
Добавляет все элементы этой коллекции в строковый буфер с использованием разделителя. Записываемый текст состоит из строковых представлений (относительно метода 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 |
Источник
override def andThen[C](k: A => C): PartialFunction[A, C]
Компонует данную частичную функцию с функцией преобразования, которая применяется к результатам данной частичной функции.
Если тип функции во время выполнения является PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения данной частичной функции, возможно, суженной указанной функцией, которая отображает аргументы |
| Классы определения | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Источник
Добавляет указанные элементы в этот буфер.
| Параметры значения |
|
|---|---|
| Унаследовано от | Buffer |
Источник
Добавляет элементы, содержащиеся в итерируемом объекте, в этот буфер.
| Параметры значения |
|
|---|---|
| Унаследовано от | Buffer |
Источник
override def appended[B >: A](elem: B): CC[B]
Копия этой последовательности с добавленным элементом.
Примечание: не будет завершаться для коллекций бесконечного размера.
Пример:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за которыми следует |
| Классы определения | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
override def appendedAll[B >: A](suffix: IterableOnce[B]): CC[B]
Возвращает новую последовательность, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента последовательности — это наиболее специфический суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая коллекция типа |
| Классы определения | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
def applyOrElse[A1 <: Int, B1 >: A](x: A1, default: A1 => B1): B1
Применяет эту частичную функцию к заданному аргументу, если он содержится в области определения функции. Применяет функцию по умолчанию, когда данная частичная функция не определена.
Обратите внимание, что выражение pf.applyOrElse(x, default) эквивалентно
if(pf isDefinedAt x) pf(x) else default(x)
кроме того, метод applyOrElse может быть реализован более эффективно. Для всех литералов частичных функций компилятор генерирует реализацию applyOrElse, которая избегает двойной оценки матчеров шаблонов и условий. Это делает applyOrElse основой для эффективной реализации многих операций и сценариев, таких как:
- объединение частичных функций в цепочки orElse/andThen не приводит к чрезмерной оценке apply/isDefinedAt - lift и unlift не оценивают исходные функции дважды при каждом вызове - runWith позволяет эффективно объединять частичные функции императивным стилем с условными действиями
Для нелитеральных классов частичных функций с ненулевым методом isDefinedAt рекомендуется переопределять applyOrElse с пользовательской реализацией, которая избегает двойной оценки isDefinedAt. Это может привести к лучшей производительности и более предсказуемому поведению относительно побочных эффектов.
| Параметры значения |
|
|---|---|
| Возвращает | результат применения этой функции или функции по умолчанию. |
| Унаследовано от | PartialFunction |
Источник
Метод, который должен вызываться из каждой хорошо спроектированной функции equals, которая может быть переопределена в подклассе. См. Программирование на Scala, Глава 28 для обсуждения и проектирования.
| Параметры значения |
|
|---|---|
| Возвращает | true, если эта инстанция может быть равна |
| Унаследовано от | Seq |
Источник
final override def clone(): C
Создаёт копию объекта получателя.
По умолчанию реализация метода clone зависит от платформы.
| Возвращает | копию объекта получателя. |
|---|---|
| Примечание | не указано SLS как члена AnyRef |
| Классы определений | ArrayDequeOps -> Object |
| Унаследовано от | ArrayDequeOps |
Источник
override def collect[B](pf: PartialFunction[A, B]): CC[B]
Создаёт новую итерируемую коллекцию, применяя частичную функцию ко всем элементам этой итерируемой коллекции, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения заданной частичной функции |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее результат применения pf к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Итерируется по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, с элементами, взятыми в порядке. Таким образом, "xy" и "yy" являются комбинациями длины 2 для "xyy", но "yx" — нет. Если существует более одного способа генерации той же подпоследовательности, будет возвращён только один.
Например, у "xyyy" есть три различных способа сгенерировать "xy" в зависимости от того, какой первый, второй или третий "y" выбирается. Однако, поскольку все они идентичны, будет выбран только один. Какой из трёх будет выбран, является деталью реализации, которая не определена.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | Итератор, который обходит возможные n-элементные комбинации этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Источник
Компонует другую частичную функцию k с этой частичной функцией так, что эта частичная функция применяется к результатам k.
Обратите внимание, что вызов isDefinedAt на полученной частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для эффективности рекомендуется вместо isDefinedAt или apply вызвать applyOrElse.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения другой частичной функции, суженной этой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
Компонует два экземпляра Function1 в новую Function1, при этом эта функция применяется последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Источник
final override def concat[B >: A](suffix: IterableOnce[B]): CC[B]
Возвращает новую последовательность, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента последовательности — это наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, за которыми следуют все элементы |
| Классы определений | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Источник
Проверяет, содержит ли эта последовательность заданное значение в качестве элемента.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Исходный код
Проверяет, содержит ли эта последовательность заданную последовательность в качестве фрагмента.
Примечание: может не завершиться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Исходный код
Это более общая версия copyToArray — она также принимает srcStart в отличие от copyToArray. Она копирует maxItems элементов из этой коллекции с srcStart в dest с destStart. Если мы достигнем конца любой из коллекций, прежде чем сможем скопировать maxItems, мы просто прекратим копирование.
| Унаследовано от | ArrayDequeOps |
|---|
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этой коллекции.
Копирование прекращается, когда скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этой коллекции.
Копирование прекращается, когда скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код
Проверяет, соответствует ли каждый элемент итератора этой коллекции соответствующему элементу другой коллекции, удовлетворяя условию предиката.
Примечание: не завершится для бесконечных коллекций.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Проверяет, соответствует ли каждый элемент этой последовательности соответствующему элементу другой последовательности, удовлетворяя условию предиката.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | SeqOps |
Исходный код
Подсчитывает количество элементов в коллекции, удовлетворяющих предикату.
Примечание: не завершится для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Исходный код
Вычисляет разность между этой последовательностью и другой последовательностью.
| Параметры значения |
|
|---|---|
| Возвращает | новая последовательность, содержащая все элементы этой последовательности, за исключением некоторых появлений элементов, которые также встречаются в |
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
def distinct: C
Выбирает все элементы этой последовательности, игнорируя дубликаты.
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
|---|---|
| Унаследовано от | SeqOps |
Исходный код
override def distinctBy[B](f: A => B): C
Выбирает все элементы этой последовательности, игнорируя дубликаты, как определено == после применения трансформирующей функции f.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Source
Выбирает все элементы, кроме первых n.
| Параметры |
|
|---|---|
| Возвращает | последовательность, состоящая из всех элементов этой последовательности, кроме первых |
| Классы | IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Наследуется от | IndexedSeqOps |
Source
| Наследуется от | Buffer |
|---|
Source
Остальная часть коллекции без её n последних элементов. Для линейных неизменяемых коллекций это должно избежать создания копии.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.
| Классы | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Наследуется от | StrictOptimizedIterableOps |
Source
| Наследуется от | Buffer |
|---|
Source
Удаляет самую длинную префиксную часть элементов, которые удовлетворяют предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры |
|
|---|---|
| Возвращает | самое длинное суффиксное подмножество этой итерируемой коллекции, первый элемент которого не удовлетворяет предикату |
| Наследуется от | IterableOps |
Source
| Наследуется от | Buffer |
|---|
Source
def elementWise: ElementWiseExtractor[A, B]
Возвращает объект экстрактора с методом 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: CC[A]
Пустая итерируемая последовательность того же типа, что и эта итерируемая последовательность.
| Возвращает | пустая итерируемая последовательность типа |
|---|---|
| Классы | IterableFactoryDefaults -> IterableOps |
| Наследуется от | IterableFactoryDefaults |
Source
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры |
|
|---|---|
| Возвращает |
|
| Наследуется от | SeqOps |
Source
Универсальный метод равенства, определенный в AnyRef.
| Классы | Seq -> Equals -> Any |
|---|---|
| Наследуется от | Seq |
Source
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры |
|
|---|---|
| Возвращает |
|
| Наследуется от | IterableOnceOps |
Source
Выбирает все элементы этой итерируемой коллекции, удовлетворяющие предикату.
| Параметры |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, удовлетворяющих заданному предикату |
| Классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Наследуется от | StrictOptimizedIterableOps |
Source
| Наследуется от | IndexedBuffer |
|---|
Source
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Параметры |
|
|---|---|
| Возвращает | новая итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Наследуется от | StrictOptimizedIterableOps |
Source
Находит первый элемент коллекции, удовлетворяющий предикату, если он существует.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение Option, содержащее первый элемент в коллекции, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Источник
Находит последний элемент последовательности, удовлетворяющий предикату, если такой есть.
Примечание: не будет завершаться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает | значение Option, содержащее последний элемент в последовательности, удовлетворяющий |
| Унаследовано от | SeqOps |
Источник
override def flatMap[B](f: A => IterableOnce[B]): CC[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: String) => 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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная в результате применения заданной функции, возвращающей коллекцию |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
| Унаследовано от | IndexedBuffer |
|---|
Источник
override def flatten[B](implicit toIterableOnce: A => IterableOnce[B]): CC[B]
Преобразует эту итерируемую коллекцию итерируемых коллекций в итерируемую коллекцию, образованную элементами этих итерируемых коллекций.
Тип результирующей коллекции будет определяться типом итерируемой коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путем конкатенации всех итерируемых коллекций элементов. |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
Складывает элементы этой коллекции, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективного порядка обхода.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат применения оператора fold |
| Унаследовано от | IterableOnceOps |
Исходный код
def foldLeft[B](z: B)(op: (B, A) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции, слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции, лежащей в основе, не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат вставки |
| Унаследовано от | IterableOnceOps |
Исходный код
override def foldRight[B](z: B)(op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой последовательности и начальному значению, справа налево.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат вставки |
| Классы определения | IndexedSeqOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqOps |
Исходный код
Проверяет, выполняется ли предикат для всех элементов этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Применить f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в инференции типов scalac.
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
protected def fromSpecific(coll: IterableOnce[A]): CC[A]
Определяет, как преобразовать заданную Iterable[A] в коллекцию типа C.
Этот процесс может быть выполнен в строгом или нестрогом режиме (т.е. без оценки элементов результирующих коллекций). Другими словами, этот метод определяет модель оценки коллекции.
END_OF_DOCUMENT_MARKER| Примечание |
При реализации пользовательского типа коллекции и уточнении Как видно из аннотации |
|---|---|
| Унаследовано от | IterableFactoryDefaults |
Исходный код
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
Карта, сопоставляющая ключи итерируемым коллекциям, которая удовлетворяет следующему инварианту: (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: A => K)(f: A => 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, метод |
| Классы определений | ArrayDequeOps -> IterableOps |
| Унаследовано от | ArrayDequeOps |
Исходный код
Вычисляет значение хэш-кода для объекта.
Алгоритм хэширования по умолчанию зависит от платформы.
Обратите внимание, что разрешается, чтобы у двух объектов были идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)), но они не были равны (o1.equals(o2) возвращает false). Вырожденная реализация могла бы всегда возвращать 0. Однако, требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true), у них были идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому, при переопределении этого метода, убедитесь, что поведение согласуется с методом equals.
| Возвращает | значение хэш-кода для этого объекта. |
|---|---|
| Классы определений | Seq -> Any |
| Унаследовано от | Seq |
Исходный код
override def head: A
Выбирает первый элемент этой последовательности.
| Возвращает | первый элемент этой последовательности. |
|---|---|
| Исключения |
|
| Классы определений | IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqOps |
Исходный код
override def headOption: Option[A]
Возвращает опциональный первый элемент.
| Возвращает | первый элемент этой последовательности, если она не пустая, |
|---|---|
| Классы определений | IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqOps |
Исходный код
Находит индекс первого вхождения некоторого значения в этой последовательности.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Исходный код
Находит индекс первого вхождения некоторого значения в этой последовательности после или на определенном стартовом индексе.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Исходный код
Находит первый индекс, где эта последовательность содержит заданную последовательность в виде слайса.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс после или на стартовом индексе, где эта последовательность содержит заданную последовательность как срез.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на определенном начальном индексе.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Создает диапазон всех индексов этой последовательности.
Примечание: даже при применении к представлению или ленивой коллекции она всегда заставит элементы.
| Возвращает | значение |
|---|---|
| Унаследовано от | SeqOps |
Source
def init: C
Начальная часть коллекции без последнего элемента.
Примечание: даже при применении к представлению или ленивой коллекции она всегда заставит элементы.
| Унаследовано от | IterableOps |
|---|
Source
Итерируется по начальным частям этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результаты последовательных применений init.
Примечание: даже при применении к представлению или ленивой коллекции она всегда заставит элементы.
| Возвращает | итератор по всем начальным частям этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Source
Вычисляет пересечение мультимножеств между этой последовательностью и другой последовательностью.
| Параметры значения |
|
|---|---|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, которые также появляются в |
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Source
Проверяет, содержит ли эта последовательность заданный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Source
override def isTraversableAgain: Boolean
Проверяет, может ли эта итерируемая коллекция быть многократно пройдена. Всегда истинно для итерируемых и ложно для итераторов, если не переопределено.
| Возвращает |
|
|---|---|
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Source
Итератор может быть использован только один раз
| Унаследовано от | IndexedSeqOps |
|---|
Source
override def last: A
Выбирает последний элемент.
| Возвращает | Последний элемент этой последовательности. |
|---|---|
| Исключения |
|
| Классы определений | IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqOps |
Source
Находит индекс последнего вхождения некоторого значения в этой последовательности перед или на заданном конечном индексе.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит последний индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс, такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности |
| Унаследовано от | SeqOps |
Source
Находит последний индекс перед или на заданном индексе окончания, где данная последовательность содержит заданную последовательность в качестве среза.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс последнего элемента этой последовательности, удовлетворяющего предикату |
| Унаследовано от | SeqOps |
Source
Находит индекс последнего элемента, удовлетворяющего некоторому предикату до или на заданном индексе окончания.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
def lastOption: Option[A]
Возвращает последний элемент, если он есть.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | последний элемент этой итерируемой коллекции$ если она не пуста, |
|---|---|
| Унаследовано от | 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 Метод, как реализован здесь, не вызывает |
| Классы определения | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Source
Сравнивает длину этой последовательности со значением теста.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len Метод, как реализован здесь, не вызывает |
| См. также | |
| Классы определения | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Source
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: A => B): CC[B]
Создаёт новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения заданной функции |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
def mapInPlace(f: A => A): IndexedSeqOps.this.type
Модифицирует эту изменяемую последовательность, применяя функцию ко всем элементам этой изменяемой последовательности.
| Параметры значения |
|
|---|---|
| Возвращает | эта изменяемая последовательность, модифицированная заменой всех элементов результатом применения заданной функции |
| Унаследовано от | IndexedSeqOps |
Source
Находит наибольший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этой коллекции по отношению к порядку |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f, относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение-опцию, содержащую первый элемент этой коллекции с наибольшим значением, измеренным функцией f, относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наибольший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение-опцию, содержащую наибольший элемент этой коллекции по отношению к порядку |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этой коллекции по отношению к порядку |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наименьшим значением, измеренным функцией f по отношению к порядку |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащей первый элемент этой коллекции с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащей наименьший элемент этой коллекции по отношению к порядку |
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке.
Делегирует addString, который может быть переопределён.
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке с использованием разделительной строки.
Делегирует addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке, используя начальную, конечную и разделительную строки.
Делегирует вызов методу addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
protected def newSpecificBuilder: Builder[A, CC[A]]
| Возвращает | строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, scala.collection.View или scala.collection.immutable.LazyList), реализовать этот метод возможно, но полученный |
|---|---|
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как видно из аннотации |
| Унаследовано от | IterableFactoryDefaults |
Источник
Проверяет, не пуста ли коллекция.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Компонует эту частичную функцию с резервной частичной функцией, которая применяется там, где эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, имеющая в качестве области определения объединение областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Источник
Копия этой последовательности с добавленным элементом до тех пор, пока не будет достигнута заданная целевая длина.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за которыми следует минимальное количество вхождений |
| Классы определения | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
| Унаследовано от | Buffer |
|---|
Источник
Пара, состоящая, во-первых, из всех элементов, удовлетворяющих предикату p, и, во-вторых, из всех элементов, не удовлетворяющих ему. Интересно, потому что разделяет коллекцию на две части.
Установленная здесь реализация требует два прохода по коллекции. Строгие коллекции имеют переопределённую версию partition в StrictOptimizedIterableOps, которая требует только одного прохода.
| Классы определения | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
override def partitionMap[A1, A2](f: A => Either[A1, A2]): (CC[A1], CC[A2])
Применяет функцию f к каждому элементу итерируемой коллекции и возвращает пару итерируемых коллекций: первая из тех значений, которые возвращаются f и были обернуты в scala.util.Left, а вторая — из тех, которые были обернуты в scala.util.Right.
Пример:
val xs = Iterable(1, "one", 2, "two", 3, "three") partitionMap {
case i: Int => Left(i)
case s: String => Right(s)
}
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пару итерируемых коллекций: первая из тех значений, которые возвращаются |
| Классы определения | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Создаёт новую последовательность, где часть элементов этой последовательности заменяется другой последовательностью.
Замена по отрицательным индексам эквивалентна замене, начинающейся с 0. Замена по индексам, равным или превышающим длину исходной последовательности, добавляет замену в конец. Если заменяется больше значений, чем фактически существует, избыток игнорируется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за исключением того, что |
| Унаследовано от | SeqOps |
Источник
| Унаследовано от | IndexedBuffer |
|---|
Источник
def permutations: Iterator[C]
Перебирает все различные перестановки.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно обрабатываться.
| Возвращает | Итератор, который проходит по различным перестановкам этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Исходный код
override def prepended[B >: A](elem: B): CC[B]
Копия последовательности с добавленным элементом в начало.
Также, исходная последовательность не изменяется, поэтому вам нужно будет сохранить результат.
Пример:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из |
| Классы определения | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
override def prependedAll[B >: A](prefix: IterableOnce[B]): CC[B]
Как и :++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.
Он отличается от :++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоническое правило: двоеточие стоит со стороны нового типа коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, содержащая все элементы |
| Классы определения | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
Перемножает элементы этой коллекции.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduce[B >: A](op: (B, B) => B): B
Применяет оператор объединения к элементам этой коллекции, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Результат применения оператора объединения |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceLeft[B >: A](op: (B, A) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащее результат |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceOption[B >: A](op: (B, B) => B): Option[B]
Объединяет элементы этой коллекции, если они есть, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащее результат применения оператора объединения |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceRight[B >: A](op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опционального типа, содержащее результат |
| Унаследовано от | IterableOnceOps |
Исходный код
| Унаследовано от | ArrayDequeOps |
|---|
Исходный код
override def reverse: C
Возвращает новую последовательность с элементами в обратном порядке.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
| Возвращает | Новая последовательность со всеми элементами этой последовательности в обратном порядке. |
|---|---|
| Классы-определения | ArrayDequeOps -> SeqOps |
| Унаследовано от | ArrayDequeOps |
Исходный код
override def reverseIterator: Iterator[A]
Итератор, возвращающий элементы в обратном порядке.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: xs.reverseIterator эквивалентно xs.reverse.iterator, но может быть более эффективным.
| Возвращает | итератор, возвращающий элементы этой последовательности в обратном порядке |
|---|---|
| Классы-определения | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Исходный код
| Классы-определения | IndexedSeqOps -> IterableOnceOps |
|---|---|
| Унаследовано от | IndexedSeqOps |
Исходный код
Комбинирует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для своих побочных эффектов; ее результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализовано через applyOrElse и, следовательно, потенциально более эффективно. Использование runWith предотвращает двойную оценку соответствия шаблонам и условий для частичных функций-литералов.
| Параметры значения |
|
|---|---|
| Возвращает | функция, которая отображает аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Исходный код
Являются ли элементы этой коллекции такими же (и в том же порядке), как элементы that?
| Унаследовано от | SeqOps |
|---|
Исходный код
def scan[B >: A](z: B)(op: (B, B) => B): CC[B]
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может быть применен более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, содержащая префиксное сканирование элементов в этой итерируемой коллекции |
| Унаследовано от | IterableOps |
Исходный код
override def scanLeft[B](z: B)(op: (B, A) => B): CC[B]
Создает итерируемую коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция со промежуточными результатами |
| Классы-определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
def scanRight[B](z: B)(op: (A, B) => B): CC[B]
Создает коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — это последний кумулятивный результат.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция со промежуточными результатами |
| Унаследовано от | IterableOps |
Исходный код
Поиск в заданном интервале в этой отсортированной последовательности определенного элемента. Если эта последовательность является IndexedSeq, используется двоичный поиск. В противном случае используется линейный поиск.
Последовательность должна быть отсортирована с использованием того же Ordering перед вызовом; в противном случае результаты не определены.
| Параметры значения |
|
|---|---|
| Возвращает | значение |
| См. также |
scala.collection.SeqOps, метод |
| Примечание | Если |
| Классы-определения | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Исходный код
Искать в этом отсортированном последовательности конкретный элемент. Если последовательность является IndexedSeq, используется бинарный поиск. В противном случае используется линейный поиск.
Последовательность должна быть отсортирована с использованием того же Ordering перед вызовом; в противном случае результаты не определены.
| Параметры значения |
|
|---|---|
| Возвращает | значение |
| См. также |
scala.collection.SeqOps, метод |
| Классы определений | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Источник
Вычисляет длину самой длинной последовательности, начинающейся с некоторого индекса, элементы которой удовлетворяют некоторому предикату.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | длину самой длинной последовательности этой последовательности, начинающейся с индекса |
| Унаследовано от | SeqOps |
Источник
Вычисляет длину самой длинной последовательности, начинающейся с первого элемента, элементы которой удовлетворяют некоторому предикату.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | длину самой длинной последовательности этой последовательности, начинающейся с первого элемента, такая, что каждый элемент последовательности удовлетворяет предикату |
| Унаследовано от | SeqOps |
Источник
Размер этой последовательности.
Примечание: не завершится для коллекций бесконечного размера.
| Возвращает | количество элементов в этой последовательности. |
|---|---|
| Классы определений | SeqOps -> IterableOnceOps |
| Унаследовано от | SeqOps |
Источник
Сравнивает размер этой последовательности с размером другой Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Метод, как реализован здесь, не вызывает |
| Классы определений | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Источник
Сравнивает размер этой последовательности со значением-тестом.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Метод, как реализован здесь, не вызывает |
| См. также | |
| Классы определений | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Источник
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 |
|---|
Источник
Выбирает интервал элементов. Возвращаемая последовательность состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, содержащую элементы, большие или равные индексу |
| Классы определений | ArrayDequeOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | ArrayDequeOps |
Источник
| Унаследовано от | Buffer |
|---|
Источник
Группирует элементы в блоки фиксированного размера, передавая "скользящее окно" по ним (в отличие от разделения их, как это делается в grouped.)
Возвращаемый итератор будет пустым при вызове на пустой коллекции. Последний элемент, который производит итератор, может быть меньше размера окна, когда исходная коллекция не исчерпана размером окна перед ним, и его последний элемент не пропущен шагом перед ним.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий последовательности размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Классы определений | ArrayDequeOps -> IterableOps |
| Унаследовано от | ArrayDequeOps |
Источник
Группирует элементы в блоки фиксированного размера, передавая "скользящее окно" по ним (в отличие от разделения их, как это делается в grouped.)
Пустая коллекция возвращает пустой итератор, а непустая коллекция, содержащая меньше элементов, чем размер окна, возвращает итератор, который будет производить исходную коллекцию как единственный элемент.
END_OF_DOCUMENT_MARKER| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Сортирует эту последовательность в соответствии с упорядочением, полученным из преобразования неявного упорядочения с помощью функции преобразования.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
Сортировка стабильна. То есть, элементы, равные (как определено 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 |
Источник
Сортирует эту изменяемую последовательность на месте в соответствии с упорядочением.
| Параметры значения |
|
|---|---|
| Возвращает | изменённую входную изменяемую последовательность, отсортированную в соответствии с упорядочением |
| См. также | |
| Унаследовано от | IndexedSeqOps |
Источник
Сортирует эту изменяемую последовательность на месте в соответствии с упорядочением, полученным из преобразования неявного упорядочения с помощью функции преобразования.
| См. также | |
|---|---|
| Унаследовано от | IndexedSeqOps |
Источник
Сортирует эту изменяемую последовательность на месте в соответствии с функцией сравнения.
| См. также | |
|---|---|
| Унаследовано от | IndexedSeqOps |
Источник
Сортирует эту последовательность в соответствии с функцией сравнения.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
Сортировка стабильна. То есть, элементы, равные (как определено lt), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с функцией сравнения |
| Пример |
List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
List("Bob", "John", "Steve", "Tom")
|
| Унаследовано от | SeqOps |
Источник
Сортирует эту последовательность в соответствии с упорядочением.
Сортировка стабильна. То есть, элементы, равные (как определено ord.compare), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с упорядочением |
| См. также | scala.math.Ordering Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться. |
| Унаследовано от | SeqOps |
Источник
Разбивает эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно), чем (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пара, состоящая из самого длинного префикса этой итерируемой коллекции, элементы которого все удовлетворяют |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Разбивает эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно), чем (c take n, c drop n).
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пара итерируемых коллекций, состоящая из первых |
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
Проверяет, содержит ли эта последовательность заданную последовательность в заданном индексе.
Примечание: Если и получаемый объект this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Удаляет все элементы, созданные итератором, из этого изменяемого набора.
| Параметры значения |
|
|---|---|
| Возвращает | сам изменяемый набор. |
| Унаследовано от | Shrinkable |
Источник
Суммирует элементы этого набора.
Примечание: не завершится для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумма всех элементов этого набора по отношению к оператору |
| Унаследовано от | IterableOnceOps |
Источник
def tail: C
Остальная часть набора без первого элемента.
| Унаследовано от | IterableOps |
|---|
Источник
Итерируется по хвостам этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее — пустым итерируемым набором, при этом промежуточные значения — результаты последовательных применений tail.
| Возвращает | итератор по всем хвостам этого итерируемого набора |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Выбирает первые n элементов.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, содержащая только первые |
| Классы определения | IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqOps |
Источник
| Унаследовано от | Buffer |
|---|
Источник
Коллекция, содержащая последние n элементы этого набора.
Примечание: даже при применении к представлению или ленивой коллекции все элементы будут принудительно вычисляться.
| Классы определения | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
| Унаследовано от | Buffer |
|---|
Источник
Берет самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный префикс этого итерируемого набора, элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Источник
| Унаследовано от | Buffer |
|---|
Источник
override def tapEach[U](f: A => U): C
Применяет функцию побочного эффекта к каждому элементу в этом наборе. Строгие коллекции немедленно применяют f к своим элементам, а ленивые коллекции, такие как представления и LazyLists, применяют f к каждому элементу только при вычислении этого элемента, и каждый раз, когда этот элемент вычисляется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | тот же логический набор, что и этот |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Используя фабрику коллекций factory, преобразуйте этот набор в соответствующее представление для текущего типа элемента A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
def toIndexedSeq: IndexedSeq[A]
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Возвращает | Этот набор как |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
| Inherited from | IterableOnceOps |
|---|
Source
Возвращает строковое представление объекта.
По умолчанию представление зависит от платформы.
| Returns | строковое представление объекта. |
|---|---|
| Definition Classes | Seq -> Function1 -> Iterable -> Any |
| Inherited from | Seq |
Source
| Inherited from | IterableOnceOps |
|---|
Source
Транспонирует это итерируемое множество итерируемых множеств в итерируемое множество итерируемых множеств.
Тип результирующего множества будет определяться статическим типом итерируемого множества. Например:
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))
Примечание: Даже при применении к представлению или ленивому множеству, элементы всегда будут принудительно вычисляться.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | двумерное итерируемое множество итерируемых множеств, где n-я строка является n-м столбцом этого итерируемого множества. |
| Throws |
|
| Inherited from | IterableOps |
Source
Попытка извлечь B из A в выражении сопоставления с образцом.
| Inherited from | PartialFunction |
|---|
Source
override def unzip[A1, A2](implicit asPair: A => (A1, A2)): (CC[A1], CC[A2])
Преобразует это итерируемое множество пар в два множества первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | пара итерируемых множеств, содержащих первую, соответственно вторую половину каждой пары элементов этого итерируемого множества. |
| Definition Classes | StrictOptimizedIterableOps -> IterableOps |
| Inherited from | StrictOptimizedIterableOps |
Source
override def unzip3[A1, A2, A3](implicit asTriple: A => (A1, A2, A3)): (CC[A1], CC[A2], CC[A3])
Преобразует это итерируемое множество троек в три множества первого, второго и третьего элементов каждой тройки.
val xs = Iterable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three),
// Iterable(1, 2, 3))
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | тройка итерируемых множеств, содержащих первый, второй, соответственно третий член каждой тройки элементов этого итерируемого множества. |
| Definition Classes | StrictOptimizedIterableOps -> IterableOps |
| Inherited from | StrictOptimizedIterableOps |
Source
Копия этого последовательности с одним заменённым элементом.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | новая последовательность, которая является копией этой последовательности с элементом в позиции |
| Throws |
|
| Inherited from | SeqOps |
Source
override def view: IndexedSeqView[A]
Представление элементов этого множества.
| Definition Classes | IndexedSeqOps -> SeqOps -> IterableOps |
|---|---|
| Inherited from | IndexedSeqOps |
Source
Создаёт нестрогий фильтр этого итерируемого множества.
Примечание: разница между c filter p и c withFilter p заключается в том, что первый создаёт новое множество, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если только тип базового множества не является упорядоченным.
| Value parameters |
|
|---|---|
| Returns | объект класса |
| Inherited from | IterableOps |
Source
override def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемое множество, сформированное из этого итерируемого множества и другого итерируемого множества, объединяя соответствующие элементы в пары. Если одно из двух множеств длиннее другого, оставшиеся элементы игнорируются.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | новое итерируемое множество, содержащее пары, состоящие из соответствующих элементов этого итерируемого множества и |
| Definition Classes | StrictOptimizedIterableOps -> IterableOps |
| Inherited from | StrictOptimizedIterableOps |
Source
Возвращает итерируемую коллекцию, образованную из этой итерируемой коллекции и другой итерируемой коллекции путём объединения соответствующих элементов парами. Если одна из двух коллекций короче другой, элементы-заполнители используются для расширения более короткой коллекции до длины более длинной.
| Параметры значения |
|
|---|---|
| Возвращает | новая коллекция типа |
| Унаследовано от | IterableOps |
Источник
override def zipWithIndex: CC[(A, Int)]
Объединяет эту итерируемую коллекцию с её индексами.
| Возвращает | новая итерируемая коллекция, содержащая пары, состоящие из всех элементов этой итерируемой коллекции, соединённых с их индексом. Индексы начинаются с |
|---|---|
| Пример | |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/collection/mutable/ArrayDeque.html