Класс ArraySeq.ofLong
| Наследуемые типы | 29 типов |
|---|
Конкретные методы
Исходный код
Копия этого неизменяемого массива с добавленным элементом.
Примечание: не завершится для коллекций бесконечного размера.
Пример:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый неизменяемый массив, состоящий из всех элементов этого неизменяемого массива, после которых следует |
| Определяющие классы | ArraySeq -> StrictOptimizedSeqOps -> SeqOps |
Исходный код
Получение элемента по указанному индексу. Эта операция предоставлена для удобства в Seq. Не следует предполагать, что она будет эффективной, если у вас нет IndexedSeq.
Исходный код
Универсальный метод равенства, определенный в AnyRef.
| Определяющие классы | Seq -> Equals -> Any |
|---|
Исходный код
Вычисление значения хэш-кода для объекта.
По умолчанию алгоритм хэширования зависит от платформы.
Обратите внимание, что для двух объектов могут быть одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)) но они могут не быть равны (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true) что у них одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода, убедитесь, что поведение согласуется с методом equals.
| Возвращает | значение хэш-кода для этого объекта. |
|---|---|
| Определяющие классы | Seq -> Any |
Исходный код
Итератор может быть использован только один раз
| Определяющие классы | IndexedSeqOps -> IterableOnce |
|---|
Исходный код
Длина (количество элементов) неизменяемого массива. size является псевдонимом для length в коллекциях Seq.
Исходный код
Копия неизменяемого массива с добавленным элементом в начало.
Также исходный неизменяемый массив не изменяется, поэтому вам нужно будет сохранить результат.
Пример:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый неизменяемый массив, состоящий из |
| Определяющие классы | ArraySeq -> StrictOptimizedSeqOps -> IndexedSeqOps -> SeqOps |
Исходный код
Сортирует этот неизменяемый массив в соответствии с Ordering.
Сортировка устойчивая. То есть, элементы, которые равны (как определяется ord.compare) появляются в отсортированной последовательности в том же порядке, что и в оригинале.
| Параметры значения |
|
|---|---|
| Возвращает | неизменяемый массив, состоящий из элементов этого неизменяемого массива, отсортированных в соответствии с порядком |
| См. также | scala.math.Ordering Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться. |
| Определяющие классы | ArraySeq -> StrictOptimizedSeqOps -> 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 можно преобразовать только в последовательные потоки.
| Классы-предки | ArraySeq -> IndexedSeqOps -> IterableOnce |
|---|
Исходный код
Копия этого неизменяемого массива с одним заменённым элементом.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новый неизменяемый массив, являющийся копией этого неизменяемого массива с элементом на позиции |
| Исключения |
|
| Классы-предки | ArraySeq -> StrictOptimizedSeqOps -> SeqOps |
Наследованные методы
Исходный код
Псевдоним для concat
| Наследованный от | IterableOps |
|---|
Исходный код
Псевдоним для prependedAll
| Классы-предки | SeqOps -> IterableOps |
|---|---|
| Наследованный от | SeqOps |
Исходный код
Псевдоним для prepended.
Обратите внимание, что операторы с окончанием :- являются правоассоциативными (см. пример). Мемоническая помощь для +: vs. :+ заключается в том, что двоеточие ставится со стороны коллекции.
| Наследованный от | SeqOps |
|---|
Исходный код
Псевдоним для appended
Обратите внимание, что операторы с окончанием :- являются правоассоциативными (см. пример). Мемоническая помощь для +: vs. :+ заключается в том, что двоеточие ставится со стороны коллекции.
| Наследованный от | SeqOps |
|---|
Исходный код
Псевдоним для appendedAll
| Наследованный от | SeqOps |
|---|
Исходный код
Добавляет все элементы этой коллекции в StringBuilder. Записываемый текст состоит из строковых представлений (с использованием метода toString) всех элементов этой коллекции без разделителя.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
| Параметры значения |
|
|---|---|
| Возвращаемое значение | StringBuilder |
| Наследованный от | IterableOnceOps |
Исходный код
Добавляет все элементы этой коллекции в StringBuilder с использованием разделителя. Записываемый текст состоит из строковых представлений (с использованием метода toString) всех элементов этой коллекции, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
| Параметры значения |
|
|---|---|
| Возвращаемое значение | StringBuilder |
| Наследованный от | IterableOnceOps |
Исходный код
Добавляет все элементы этой коллекции в StringBuilder с использованием начальной, конечной и разделительной строк. Записываемый текст начинается со строки start и заканчивается строкой end. Внутри строковые представления (с использованием метода toString) всех элементов этой коллекции разделяются строкой sep.
Пример:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
| Параметры значения |
|
|---|---|
| Возвращаемое значение | StringBuilder |
| Наследованный от | IterableOnceOps |
Исходный код
Композирует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt на результирующей частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется вызывать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Исходный код
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип функции в ходе выполнения PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, возможно суженной заданной функцией, которая отображает аргументы |
| Определяющие классы | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Исходный код
Возвращает новую неизменяемую массив содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов неизменяемого массива - самый общий суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый набор типа |
| Определяющие классы | ArraySeq -> StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | ArraySeq |
Исходный код
Применяет эту частичную функцию к данному аргументу, когда он содержится в области определения функции. Применяет функцию по умолчанию, когда эта частичная функция не определена.
Обратите внимание, что выражение 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, которая открыта для переопределения в подклассе. См. Programming in Scala, Chapter 28 для обсуждения и проектирования.
| Параметры значения |
|
|---|---|
| Возвращает | true, если этот экземпляр потенциально может быть равен |
| Определяющие классы | IndexedSeq -> Seq -> Equals |
| Унаследовано от | IndexedSeq |
Исходный код
Создает новый итерируемый набор, применяя частичную функцию ко всем элементам этого итерируемого набора, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, полученный путем применения заданной частичной функции |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Находит первый элемент набора, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее результат применения pf к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Итерирует по сочетаниям. _Сочетание_ длины n - это подпоследовательность исходной последовательности, элементы которой взяты в порядке. Таким образом, "xy" и "yy" - оба сочетания длины 2 из "xyy", но "yx" - нет. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращен только один.
Например, "xyyy" имеет три разных способа сгенерировать "xy", в зависимости от того, какой первый, второй или третий "y" выбран. Однако, поскольку все они идентичны, будет выбран только один. Какой из трех будет выбран - деталь реализации, которая не определена.
Примечание: Даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.
| Возвращает | Итератор, который перебирает все возможные сочетания длины n из этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Исходный код
Компонует другую частичную функцию k с этой частичной функцией так, что эта частичная функция применяется к результатам k.
Обратите внимание, что вызов isDefinedAt на полученной частичной функции может применить первую частичную функцию и выполнить её побочное действие. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения другой частичной функции, суженной этой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
Компонует две экземпляра Function1 в новую Function1, применяя эту функцию последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Источник
Возвращает новую последовательность, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элементов последовательности — это самый общий суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, за которыми следуют все элементы |
| Классы определений | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Источник
Проверяет, содержит ли эта последовательность заданное значение в качестве элемента.
Примечание: может не завершаться для последовательностей бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Проверяет, содержит ли эта последовательность заданную последовательность как срез.
Примечание: может не завершаться для последовательностей бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет заданный массив xs начиная с индекса start не более чем len элементами из этого неизменяемого массива.
Копирование прекратится, как только будут скопированы все элементы этого неизменяемого массива, или будет достигнут конец массива, или len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода необходимо отбросить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Определяющие классы | ArraySeq -> IterableOnceOps |
| Унаследовано от | ArraySeq |
Источник
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этого набора.
Копирование прекратится, как только будут скопированы все элементы этого набора, или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода необходимо отбросить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этого набора.
Копирование прекратится, как только будут скопированы все элементы этого набора, или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода необходимо отбросить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя условию предиката.
Примечание: не завершит работу для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент этой последовательности соответствующему элементу другой последовательности, удовлетворяя предикату проверки.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Подсчитывает количество элементов в коллекции, которые удовлетворяют предикату.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Источник
Вычисляет разность мультимножеств между этой последовательностью и другой последовательностью.
| Параметры значения |
|
|---|---|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, за исключением некоторых вхождений элементов, которые также встречаются в |
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
def distinct: C
Выбирает все элементы этой последовательности, игнорируя дубликаты.
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
|---|---|
| Унаследовано от | SeqOps |
Источник
override def distinctBy[B](f: Long => B): C
Выбирает все элементы этой последовательности, игнорируя дубликаты, определяемые == после применения функции преобразования f.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
| Классы определений | StrictOptimizedSeqOps -> StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
Выбирает все элементы, кроме первых n.
| Параметры значения |
|
|---|---|
| Возвращает | неизменяемый массив, содержащий все элементы этого неизменяемого массива, кроме первых |
| Классы определений | ArraySeq -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | ArraySeq |
Источник
Остаток коллекции без её n последних элементов. Для линейных неизменяемых коллекций это должно избегать создания копии.
Примечание: Даже при применении к представлению или ленивому набору, он всегда будет принудительно применять элементы.
| Классы определений | ArraySeq -> StrictOptimizedIterableOps -> IndexedSeqOps -> IterableOps |
|---|---|
| Унаследовано от | ArraySeq |
Источник
Удаляет самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | наиболее длинный суффикс этого набора итерируемых элементов, первый элемент которого не удовлетворяет предикату |
| Унаследовано от | IterableOps |
Источник
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 |
Источник
override def empty: CC[A]
Пустой итерируемый набор того же типа, что и этот итерируемый набор.
| Возвращает | пустой итерируемый набор типа |
|---|---|
| Классы определений | EvidenceIterableFactoryDefaults -> IterableOps |
| Унаследовано от | EvidenceIterableFactoryDefaults |
Источник
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не будет завершаться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: может не завершиться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
Выбирает все элементы этой итерируемой коллекции, удовлетворяющие предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новую итерируемую коллекцию, содержащую все элементы этой итерируемой коллекции, удовлетворяющие заданному предикату |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новую итерируемую коллекцию, содержащую все элементы этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее первый элемент в коллекции, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Source
Находит последний элемент последовательности, удовлетворяющий предикату, если таковой имеется.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее последний элемент в последовательности, удовлетворяющий |
| Унаследовано от | SeqOps |
Source
Создает новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции и используя элементы полученных коллекций.
Например:
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 |
Исходный код
Преобразует этот итерируемый набор коллекций перебираемых коллекций в итерируемый набор, образованный элементами этих перебираемых коллекций.
Тип результирующего набора будет определяться типом итерируемой коллекции. Например:
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 |
Исходный код
Складывает элементы этой коллекции, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат применения оператора сжатия |
| Унаследовано от | IterableOnceOps |
Исходный код
Применяет бинарный оператор к начальному значению и всем элементам этого неизменяемого массива слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат вставки |
| Определяющие классы | ArraySeq -> IterableOnceOps |
| Унаследовано от | ArraySeq |
Исходный код
Применяет бинарный оператор ко всем элементам этого неизменяемого массива и начальному значению, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Определяющие классы | ArraySeq -> IndexedSeqOps -> IterableOnceOps |
| Унаследованно от | ArraySeq |
Источник
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает |
|
| Унаследованно от | IterableOnceOps |
Источник
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в процессе вывода типов scalac.
| Унаследованно от | IterableOnceOps |
|---|
Источник
Определяет, как преобразовать заданный Iterable[A] в коллекцию типа C.
Этот процесс может выполняться строго или нестрого (т. е. без оценки элементов результирующих коллекций). Другими словами, этот метод определяет модель оценки коллекции.
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как показано аннотацией |
|---|---|
| Определяющие классы | 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 |
Источник
Разделяет эту итерируемую коллекцию на карту в соответствии с функцией-дискриминатором 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 |
Источник
override def head: A
Выбирает первый элемент этой последовательности.
| Возвращает | первый элемент этой последовательности. |
|---|---|
| Исключения |
|
| Определяющие классы | IndexedSeqOps -> IterableOps |
| Унаследованно от | IndexedSeqOps |
Источник
override def headOption: Option[A]
Возвращает опционально первый элемент.
| Возвращает | первый элемент этой последовательности, если она не пустая, |
|---|---|
| Определяющие классы | IndexedSeqOps -> IterableOps |
| Унаследованно от | IndexedSeqOps |
Источник
Находит индекс первого вхождения значения в этой последовательности.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Находит индекс первого вхождения некоторого значения в этой последовательности после или на некотором начальном индексе.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Находит первый индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: может не завершаться для бесконечных коллекций.
| Параметры значений |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Источник
Находит первый индекс после или на начальном индексе, где эта последовательность содержит заданную последовательность как срез.
Примечание: может не завершаться для бесконечных коллекций.
| Параметры значений |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Источник
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: может не завершаться для бесконечных коллекций.
| Параметры значений |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на некотором начальном индексе.
Примечание: может не завершаться для бесконечных коллекций.
| Параметры значений |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Возвращает диапазон всех индексов этой последовательности.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут вынуждены.
| Возвращает | значение |
|---|---|
| Унаследовано от | SeqOps |
Исходный код
def init: C
Начальная часть коллекции без её последнего элемента.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
| Унаследовано от | IterableOps |
|---|
Исходный код
Итерирует по начальным частям (inits) этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией. Промежуточные значения — результаты последовательного применения init.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
| Возвращает | итератор по всем начальным частям (inits) этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
Вычисляет пересечение мультимножеств между этой последовательностью и другой последовательностью.
| Параметры |
|
|---|---|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, которые также присутствуют в |
| Классы определения | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
Проверяет, содержит ли эта последовательность указанный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
| Параметры |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Исходный код
Проверяет, пуста ли последовательность.
Примечание: Реализации в подклассах, которые не являются многократно итерируемыми, должны позаботиться о том, чтобы не потреблять элементы при вызове isEmpty.
| Возвращает |
|
|---|---|
| Классы определения | SeqOps -> IterableOnceOps |
| Унаследовано от | SeqOps |
Исходный код
override def isTraversableAgain: Boolean
Проверяет, может ли эта итерируемая коллекция быть многократно итерируемой. Всегда истинно для Iterables и ложно для Iterators, если не переопределено.
| Возвращает |
|
|---|---|
| Определяющие классы | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
Объект-компаньон этого неизменяемого массива, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Определяющие классы | ArraySeq -> IndexedSeq -> IndexedSeq -> Seq -> Iterable -> Seq -> Iterable -> IterableOps |
| Унаследовано от | ArraySeq |
Источник
| Возвращает | Количество элементов в этой последовательности, если его можно вычислить с небольшой затратой ресурсов, -1 в противном случае. Небольшая затрата ресурсов обычно означает: Не требуется проход по коллекции. |
|---|---|
| Определяющие классы | IndexedSeqOps -> IterableOnce |
| Унаследовано от | IndexedSeqOps |
Источник
override def last: A
Выбирает последний элемент.
| Возвращает | Последний элемент этой последовательности. |
|---|---|
| Исключения |
|
| Определяющие классы | IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqOps |
Источник
Находит индекс последнего вхождения некоторого значения в этой последовательности перед или на заданном индексе конца.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Находит последний индекс, где эта последовательность содержит заданную последовательность в качестве фрагмента.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс, такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности |
| Унаследовано от | SeqOps |
Источник
Находит последний индекс перед или на заданном индексе конца, где эта последовательность содержит заданную последовательность в качестве фрагмента.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс |
| Унаследовано от | SeqOps |
Исходный код
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс последнего элемента этой последовательности, удовлетворяющего предикату |
| Унаследовано от | SeqOps |
Исходный код
Находит индекс последнего элемента, удовлетворяющего некоторому предикату до или на заданном индексе конца.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Исходный код
def lastOption: Option[A]
Возвращает последний элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
| Возвращает | последний элемент этой итерируемой коллекции$, если она не пуста, |
|---|---|
| Унаследовано от | IterableOps |
Исходный код
Аналогично 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 |
Исходный код
Сравнивает длину этой последовательности с размером другого 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 |
Исходный код
Сравнивает длину этой последовательности со значением теста.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len Реализация метода здесь не вызывает |
| См. также | |
| Определяющие классы | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Исходный код
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 |
|---|
Исходный код
Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.
| Возвращает | функцию, которая принимает аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Исходный код
Создает новый неизменяемый массив, применяя функцию ко всем элементам этого неизменяемого массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый неизменяемый массив, полученный путем применения данной функции |
| Определяющие классы | ArraySeq -> StrictOptimizedIterableOps -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | ArraySeq |
Исходный код
Находит наибольший элемент.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этой коллекции относительно упорядочения |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно упорядочения |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение варианта, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Исходный код
Находит наибольший элемент.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение варианта, содержащее наибольший элемент этой коллекции относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Исходный код
Находит наименьший элемент.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этой коллекции относительно упорядочения |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение option, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение option, содержащее наименьший элемент этого набора относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этого набора в строке.
Делегирует addString, который может быть переопределён.
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с помощью метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этого набора в строке с помощью разделительной строки.
Делегирует addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с помощью метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этого набора в строке с использованием начальной, конечной и разделительных строк.
Делегирует addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этого набора. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
override protected def newSpecificBuilder: Builder[A, CC[A]]
| Возвращает | строгий билдер для того же типа набора. Обратите внимание, что в случае ленивых наборов (например, scala.collection.View или scala.collection.immutable.LazyList), возможно реализовать этот метод, но результирующий |
|---|---|
| Примечание |
При реализации пользовательского типа набора и уточнении Как показывает аннотация |
| Классы определения | EvidenceIterableFactoryDefaults -> IterableOps |
| Унаследовано от | EvidenceIterableFactoryDefaults |
Источник
Проверяет, не пуст ли набор.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Компонует эту частичную функцию с резервной частичной функцией, которая применяется в тех случаях, когда эта частичная функция не определена.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, которая имеет область определения, являющуюся объединением областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Источник
Копия этого последовательности, с добавленными элементами до достижения заданной длины.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за которой следует минимальное количество вхождений |
| Определяющие классы | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
Пара, состоящая из, во-первых, всех элементов, удовлетворяющих предикату p, и, во-вторых, всех элементов, которые этому предикату не удовлетворяют. Интересно тем, что разделяет коллекцию на две части.
Представленная здесь реализация по умолчанию требует два прохода по коллекции. Строгие коллекции имеют переопределенный вариант partition в StrictOptimizedIterableOps, который требует только одного прохода.
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Применяет функцию 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. Замена по индексам, равным или большим длины исходной последовательности, добавляет замену в конец. Если количество заменяемых значений больше, чем фактически существует, избыток игнорируется.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за исключением того, что |
| Определяющие классы | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
def permutations: Iterator[C]
Итерирует по различным перестановкам.
Примечание: даже когда применяется к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Возвращает | Итератор, проходящий по различным перестановкам этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Источник
Как и :++, возвращает новую коллекцию, содержащую элементы левого операнда, за которыми следуют элементы правого операнда.
Отличается от :++ тем, что тип результирующей коллекции определяется правым операндом, а не левым. Мнемоника: двоеточие стоит рядом с типом новой коллекции.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новый неизменяемый массив, содержащий все элементы |
| Определяющие классы | ArraySeq -> StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | ArraySeq |
Источник
Перемножает элементы этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | произведение всех элементов этой коллекции относительно операции |
| Унаследовано от | IterableOnceOps |
Источник
Применяет операцию агрегирования к элементам этой коллекции с использованием указанной ассоциативной бинарной операции.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат применения операции агрегирования |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Применяет бинарную операцию ко всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен или операция не является ассоциативной и коммутативной.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Исключения |
|
| Наследуется от | IterableOnceOps |
Источник
Применяет бинарный оператор ко всем элементам этого набора слева направо (необязательно).
Примечание: не завершается для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и не коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опционального типа, содержащее результат |
| Наследуется от | IterableOnceOps |
Источник
Применяет заданный ассоциативный бинарный оператор к элементам этого набора (если таковые имеются).
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опционального типа, содержащее результат применения редуцирующего оператора |
| Наследуется от | IterableOnceOps |
Источник
Применяет бинарный оператор ко всем элементам этого набора справа налево.
Примечание: не завершается для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Исключения |
|
| Наследуется от | IterableOnceOps |
Источник
Применяет бинарный оператор ко всем элементам этого набора, справа налево (необязательно).
Примечание: не завершается для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опционального типа, содержащее результат |
| Наследуется от | IterableOnceOps |
Источник
Возвращает новый неизменяемый массив с элементами в обратном порядке.
Примечание: не завершается для наборов бесконечного размера.
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут форсированы.
| Возвращает | Новый неизменяемый массив со всеми элементами этого неизменяемого массива в обратном порядке. |
|---|---|
| Классы определения | ArraySeq -> IndexedSeqOps -> SeqOps |
| Наследуется от | ArraySeq |
Источник
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?
| Классы определения | IndexedSeq -> SeqOps |
|---|---|
| Наследуется от | IndexedSeq |
Источник
Вычисляет префиксное сканирование элементов набора.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значений |
|
| Возвращает | новый итерируемый набор, содержащий префиксное сканирование элементов в этом итерируемом наборе |
| Унаследованный от | IterableOps |
Источник
Создает итерируемый набор, содержащий кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для бесконечных наборов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значений |
|
| Возвращает | набор с промежуточными результатами |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследованный от | StrictOptimizedIterableOps |
Источник
Создаёт набор, содержащий кумулятивные результаты применения оператора справа налево. Головка набора — последний кумулятивный результат.
Примечание: не завершится для бесконечных наборов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
Примечание: Даже при применении к представлению или ленивому набору всегда будет принудительно вычислять элементы.
Пример:
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 |
Источник
Сравнивает размер этого набора с размером другого набора.
| Параметры значений |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Метод, как он реализован здесь, не вызывает |
| Классы определения | SeqOps -> IterableOps |
| Унаследованный от | SeqOps |
Source
Сравнивает размер этой последовательности со значением-тестом.
| Параметры значений |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Метод, как реализован здесь, не вызывает |
| См. также | |
| Классы определений | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Source
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 |
|---|
Source
Выбирает интервал элементов. Возвращаемый неизменяемый массив состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
| Параметры значений |
|
|---|---|
| Возвращает | неизменяемый массив, содержащий элементы, большие или равные индексу |
| Классы определений | ArraySeq -> IndexedSeqOps -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | ArraySeq |
Source
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" над ними (в отличие от разделения их, как это делается в grouped.)
Возвращаемый итератор будет пустым при вызове на пустом наборе. Последний элемент, который генерирует итератор, может быть меньше размера окна, если исходный набор не исчерпан окном, прежде чем он достигнет его последнего элемента, и его последний элемент не пропущен шагом перед ним.
| Параметры значений |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Source
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" над ними (в отличие от разделения их, как это делается в grouped.)
Пустой набор возвращает пустой итератор, а непустой набор, содержащий меньше элементов, чем размер окна, возвращает итератор, который будет генерировать исходный набор в качестве единственного элемента.
| Параметры значений |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Source
Сортирует эту последовательность в соответствии с упорядочением, полученным путём преобразования неявного упорядочения с помощью функции преобразования.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: Даже при применении к представлению или ленивой коллекции она всегда заставит элементы.
Сортировка устойчива. То есть, элементы, которые равны (как определяется 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 |
Source
Сортирует эту последовательность в соответствии с функцией сравнения.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: Даже при применении к представлению или ленивой коллекции она всегда заставит элементы.
Сортировка устойчива. То есть, элементы, которые равны (как определяется lt) появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, состоящую из элементов этой последовательности, отсортированных в соответствии с функцией сравнения |
| Пример |
List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
List("Bob", "John", "Steve", "Tom")
|
| Унаследовано от | SeqOps |
Source
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пара, состоящая из самого длинного префикса этой итерируемой коллекции, чьи элементы все удовлетворяют |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | пара из итерируемых коллекций, состоящих из первых |
| Определяющие классы | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Исходный код
Проверяет, содержит ли эта последовательность заданную последовательность в заданном индексе.
Примечание: если и получаемый объект this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | SeqOps |
Исходный код
Суммирует элементы этой коллекции.
Примечание: не завершится для бесконечных коллекций.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | сумма всех элементов этой коллекции по отношению к оператору |
| Унаследовано от | IterableOnceOps |
Исходный код
Остальная часть коллекции без ее первого элемента.
| Определяющие классы | ArraySeq -> IterableOps |
|---|---|
| Унаследовано от | ArraySeq |
Исходный код
Итерирует по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений tail.
| Возвращаемое значение | итератор по всем хвостам этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
Выбирает первые n элементов.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | неизменяемый массив, содержащий только первые |
| Определяющие классы | ArraySeq -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | ArraySeq |
Исходный код
Коллекция, содержащая последние n элементов этой коллекции.
Примечание: даже когда применяется к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Определяющие классы | ArraySeq -> StrictOptimizedIterableOps -> IndexedSeqOps -> IterableOps |
|---|---|
| Унаследовано от | ArraySeq |
Исходный код
Извлекает наибольший префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | наибольший префикс этой итерируемой коллекции, элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Исходный код
Применяет функцию побочного эффекта к каждому элементу этой коллекции. Строгие коллекции немедленно применяют f к своим элементам, в то время как ленивые коллекции, такие как представления и LazyLists, применяют f к каждому элементу только тогда, когда этот элемент оценивается, и каждый раз, когда этот элемент оценивается.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | такая же логическая коллекция, как и эта |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
При заданной фабрике коллекций factory, преобразовать эту коллекцию в соответствующее представление для текущего типа элементов A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
Преобразовать коллекцию в массив.
Примечание реализации: НЕ вызывайте Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
final override def toIndexedSeq: IndexedSeq[A]
| Определяющие классы | IndexedSeq -> IterableOnceOps |
|---|---|
| Унаследовано от | IndexedSeq |
Source
| Inherited from | IterableOnceOps |
|---|
Source
| Inherited from | IterableOnceOps |
|---|
Source
| Возвращает | Это коллекцию в виде |
|---|---|
| Определения классов | Seq -> IterableOnceOps |
| Унаследовано от | Seq |
Source
| Inherited from | IterableOnceOps |
|---|
Source
Возвращает строковое представление объекта.
По умолчанию представление зависит от платформы.
| Возвращает | строковое представление объекта. |
|---|---|
| Определения классов | Seq -> Function1 -> Iterable -> Any |
| Унаследовано от | 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))
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут форсироваться.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | двумерная итерируемая коллекция итерируемых коллекций, у которой n-я строка является n-м столбцом этой итерируемой коллекции. |
| Исключения |
|
| Унаследовано от | IterableOps |
Source
Попытка извлечь B из A в выражении сопоставления с образцом.
| Inherited from | PartialFunction |
|---|
Source
Преобразует эту итерируемую коллекцию пар в две коллекции первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пара итерируемых коллекций, содержащая первую, соответственно вторую половину каждой пары элементов этой итерируемой коллекции. |
| Определения классов | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
Преобразует эту итерируемую коллекцию троек в три коллекции первого, второго и третьего элемента каждой тройки.
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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | тройка итерируемых коллекций, содержащая первый, второй, соответственно третий член каждой тройки элементов этой итерируемой коллекции. |
| Определения классов | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
override def view: IndexedSeqView[A]
Представление над элементами этой коллекции.
| Определения классов | IndexedSeqOps -> SeqOps -> IterableOps |
|---|---|
| Унаследовано от | IndexedSeqOps |
Source
Создает нестрогий фильтр этой итерируемой коллекции.
Примечание: разница между c filter p и c withFilter p в том, что первый создает новую коллекцию, а второй только ограничивает область последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | объект класса |
| Унаследовано от | IterableOps |
Source
Возвращает неизменяемый массив, образованный из этого неизменяемого массива и другой итерируемой коллекции, объединяя соответствующие элементы в пары. Если одна из двух коллекций длиннее другой, оставшиеся элементы игнорируются.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый неизменяемый массив, содержащий пары, состоящие из соответствующих элементов этого неизменяемого массива и |
| Определяющие классы | ArraySeq -> StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | ArraySeq |
Исходный код
Возвращает итерируемый набор, сформированный из этого итерируемого набора и другого итерируемого набора путем объединения соответствующих элементов в пары. Если один из двух наборов короче другого, используются заполнители для расширения более короткого набора до длины более длинного.
| Параметры значения |
|
|---|---|
| Возвращает | новый набор типа |
| Унаследовано от | IterableOps |
Исходный код
override def zipWithIndex: CC[(A, Int)]
Объединяет этот итерируемый набор со своими индексами.
| Возвращает | Новый итерируемый набор, содержащий пары, состоящие из всех элементов этого итерируемого набора, соединенных с их индексом. Индексы начинаются с |
|---|---|
| Пример | |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Конкретные поля
Исходный код
Обернутый мутабельный Array , который поддерживает этот ArraySeq. Любые изменения в этом массиве нарушат ожидаемую неизменяемость. Его тип элементов не должен совпадать с типом элементов этого ArraySeq. Примитивный ArraySeq может быть поддерживаемым массивом упакованных значений, а ссылочный ArraySeq может быть поддерживаемым массивом надтипа или подтипа типа элемента.
© 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/immutable/ArraySeq$$ofLong.html