Trait SortedMapOps.SortedMapOps
trait SortedMapOps[K, +V, +CC <: ([X, Y] =>> Map[X, Y] & SortedMapOps[X, Y, CC, _]), +C <: SortedMapOps[K, V, CC, C]] extends MapOps[K, V, Map, C] with SortedMapOps[K, V, CC, C]
| Суперобъекты | |
|---|---|
| Известные подтипы | |
| Тип `Self` |
Классы
Исходный код
Класс реализации множества, возвращаемого keySet
Наследованные классы
Исходный код
Класс реализации множества, возвращаемого keySet
| Наследованно от | MapOps |
|---|
Абстрактные методы
Исходный код
protected def coll: C & CC[K, V]
| Возвращаемое значение | Это коллекция в качестве |
|---|
Исходный код
Исходный код
def updated[V1 >: V](key: K, value: V1): CC[K, V1]
Создаёт новую карту, полученную путём обновления этой карты заданной парой ключ/значение.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | Новая карта с добавленной парой ключ/значение в эту карту. <недействительная аннотация inheritdoc> |
Конкретные методы
Исходный код
final override def +[V1 >: V](kv: (K, V1)): CC[K, V1]
Псевдоним для updated
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | Новая карта с добавленной связью в эту карту. |
| Классы определений | SortedMapOps -> MapOps -> MapOps |
Исходный код
Собирает все ключи этой карты в множество.
| Возвращаемое значение | множество, содержащее все ключи этой карты. |
|---|---|
| Классы определений | SortedMapOps -> MapOps -> MapOps |
Исходный код
override def transform[W](f: (K, V) => W): CC[K, W]
Эта функция преобразует все значения отображений, содержащихся в этой карте, с помощью функции f.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | обновлённая карта |
| Классы определений | MapOps |
Исходный код
Обновляет отображение для указанного ключа и его текущего необязательно отображаемого значения (Some, если есть текущее отображение, None, если нет).
Если функция переназначения возвращает Some(v), отображение обновляется с новым значением v. Если функция переназначения возвращает None, отображение удаляется (или остаётся отсутствующим, если изначально отсутствовало). Если сама функция вызывает исключение, исключение перебрасывается, и текущее отображение остаётся неизменным.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | Новая карта с обновлённым отображением с ключом |
| Классы определений | MapOps |
Наследованные методы
Исходный код
final override def ++[V2 >: V](xs: IterableOnce[(K, V2)]): CC[K, V2]
Псевдоним для concat
| Классы определений | SortedMapOps -> MapOps |
|---|---|
| Наследованно от | SortedMapOps |
Исходный код
final def ++[B >: (K, V)](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
| Наследованно от | IterableOps |
|---|
Исходный код
final def -(key: K): C
Псевдоним для removed
| Наследованно от | MapOps |
|---|
Исходный код
final override def --(keys: IterableOnce[K]): C
Псевдоним для removedAll
| Классы определений | MapOps -> MapOps |
|---|---|
| Наследованно от | MapOps |
Исходный код
Добавляет все элементы этой карты в строковый билдер, используя строки start, end и разделитель. Записываемый текст начинается со строки 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)
| Параметры значения |
|
|---|---|
| Возвращаемое значение | строка-построитель |
| Определяющие классы | MapOps -> IterableOnceOps |
| Унаследовано от | MapOps |
Источник
Добавляет все элементы этого набора в строку-построитель. Записанный текст состоит из строковых представлений (в соответствии с методом 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 |
Источник
Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt для результирующей частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
override def andThen[C](k: V => C): PartialFunction[A, C]
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип функции в рантайме является PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | частичная функция с областью определения этой частичной функции, возможно, суженной указанной функцией, которая отображает аргументы |
| Определяющие классы | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Source
def apply(key: K): V
Извлекает значение, связанное с заданным ключом. Этот метод вызывает метод default карты, если нет отображения заданного ключа на значение. Если не переопределён, метод default выбрасывает NoSuchElementException.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | значение, связанное с заданным ключом, или результат вызова метода |
| Унаследовано от | MapOps |
Source
override def applyOrElse[K1 <: K, V1 >: V](x: K1, default: K1 => V1): V1
Применяет эту частичную функцию к заданному аргументу, когда он содержится в области определения функции. Применяет функцию обратного вызова, когда эта частичная функция не определена.
Обратите внимание, что выражение 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. Это может привести к лучшей производительности и более предсказуемому поведению по отношению к побочным эффектам.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | результат применения этой функции или функции обратного вызова. |
| Классы определений | MapOps -> PartialFunction |
| Унаследовано от | MapOps |
Source
def collect[K2, V2](pf: PartialFunction[(K, V), (K2, V2)])(implicit ordering: Ordering[K2]): CC[K2, V2]
Создаёт новую сортированную карту, применяя частичную функцию ко всем элементам этой карты, для которых функция определена.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новая карта, полученная путём применения заданной частичной функции |
| Унаследовано от | SortedMapOps |
Source
def collect[K2, V2](pf: PartialFunction[(K, V), (K2, V2)]): CC[K2, V2]
Создаёт новую коллекцию, применяя частичную функцию ко всем элементам этой карты, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая карта, полученная путём применения заданной частичной функции |
| Унаследовано от | MapOps |
Source
def collect[B](pf: PartialFunction[(K, V), B]): CC[B]
Создаёт новую коллекцию, применяя частичную функцию ко всем элементам этой итерируемой коллекции, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, полученная в результате применения заданной частичной функции |
| Унаследовано от | IterableOps |
Исходный код
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | значение типа Option, содержащее pf, применённую к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Компонует другую частичную функцию k с этой частичной функцией таким образом, что эта частичная функция применяется к результатам k.
Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить её побочные эффекты. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | частичная функция с областью определения, суженной этой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Исходный код
def compose[A](g: A => K): A => R
Компонует две экземпляры Function1 в новую Function1, при этом эта функция применяется последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая функция |
| Унаследовано от | Function1 |
Исходный код
override def concat[V2 >: V](suffix: IterableOnce[(K, V2)]): CC[K, V2]
Возвращает новую карту, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента карты — наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новая карта, содержащая все элементы этой карты, за которыми следуют все элементы |
| Классы определения | SortedMapOps -> MapOps |
| Унаследовано от | SortedMapOps |
Исходный код
def concat[B >: (K, V)](suffix: IterableOnce[B]): CC[B]
Возвращает новую итерируемую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента итерируемой коллекции — наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, за которыми следуют все элементы |
| Унаследовано от | IterableOps |
Исходный код
Проверяет, содержит ли эта карта связывание для ключа.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | MapOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование остановится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует утилизировать. Его дальнейшее использование неопределено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование остановится, как только будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует утилизировать. Его дальнейшее использование неопределено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование остановится, как только будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует утилизировать. Его дальнейшее использование неопределено и может измениться. |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя условию предиката.
Примечание: не завершит работу для бесконечных наборов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
Подсчитывает количество элементов в наборе, которые удовлетворяют предикату.
Примечание: не завершит работу для бесконечных наборов.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Source
def default(key: K): V
Определяет вычисление значения по умолчанию для карты, возвращаемое при отсутствии ключа. Реализованный здесь метод выбрасывает исключение, но может быть переопределен в подклассах.
| Параметры значения |
|
|---|---|
| Унаследовано от | MapOps |
Source
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме первых |
| Унаследовано от | IterableOps |
Source
Выбирает все элементы, кроме последних n.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме последних |
| Унаследовано от | IterableOps |
Source
Удаляет самый длинный префикс элементов, которые удовлетворяют предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный суффикс этого итерируемого набора, первый элемент которого не удовлетворяет предикату |
| Унаследовано от | IterableOps |
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 |
Исходный код
def empty: C
Пустая итерируемая последовательность того же типа, что и эта итерируемая последовательность
| Возвращает | пустую итерируемую последовательность типа |
|---|---|
| Унаследовано от | IterableOps |
Исходный код
Проверяет, выполняется ли предикат хотя бы для одного элемента в этом наборе.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
| Параметры |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые удовлетворяют заданному предикату |
| Унаследовано от | IterableOps |
Исходный код
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Параметры |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Унаследовано от | IterableOps |
Исходный код
Находит первый элемент в коллекции, удовлетворяющий предикату, если таковой существует.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры |
|
|---|---|
| Возвращает | значение типа Option, содержащее первый элемент в коллекции, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Исходный код
def firstKey: K
Возвращает первый ключ в коллекции.
| Унаследовано от | SortedMapOps |
|---|
Source
def flatMap[K2, V2](f: ((K, V)) => IterableOnce[(K2, V2)])(implicit ordering: Ordering[K2]): CC[K2, V2]
Создаёт новый отсортированный массив, применяя функцию ко всем элементам этого массива и используя элементы полученных коллекций.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новый массив, полученный путём применения данной функции, принимающей коллекции |
| Унаследовано от | SortedMapOps |
Source
def flatMap[K2, V2](f: ((K, V)) => IterableOnce[(K2, V2)]): CC[K2, V2]
Создаёт новый массив, применяя функцию ко всем элементам этого массива и используя элементы полученных коллекций.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новый массив, полученный путём применения данной функции, принимающей коллекции |
| Унаследовано от | MapOps |
Source
def flatMap[B](f: ((K, V)) => 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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, полученная путём применения данной функции, принимающей коллекции |
| Унаследовано от | IterableOps |
Source
def flatten[B](implicit asIterable: ((K, V)) => 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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, полученная путём конкатенации всех итерируемых коллекций элементов. |
| Унаследовано от | IterableOps |
Source
def fold[A1 >: (K, V)](z: A1)(op: (A1, A1) => A1): A1
Складывает элементы этой коллекции, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективного порядка обхода.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат применения оператора сворачивания |
| Унаследовано от | IterableOnceOps |
Source
def foldLeft[B](z: B)(op: (B, (K, V)) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат вставки |
| Унаследовано от | IterableOnceOps |
Source
def foldRight[B](z: B)(op: ((K, V), B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению, справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат вставки |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, выполняется ли предикат для всех элементов этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | IterableOnceOps |
Source
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
| Унаследовано от | IterableOnceOps |
|---|
Source
def foreachEntry[U](f: (K, V) => U): Unit
Применяет f к каждой паре ключ/значение для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
| Унаследовано от | MapOps |
|---|
Source
Возвращает значение, связанное с ключом, или None.
| Параметры значения |
|
|---|---|
| Возвращает | значение параметра, содержащее значение, связанное с |
| Унаследовано от | MapOps |
Исходный код
def getOrElse[V1 >: V](key: K, default: => V1): V1
Возвращает значение, связанное с ключом, или значение по умолчанию, если ключ не содержится в карте.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение, связанное с |
| Унаследовано от | MapOps |
Исходный код
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
Карта от ключей к итерируемым коллекциям, для которой выполняется следующее инвариантное условие: (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: ((K, V)) => K)(f: ((K, V)) => B)(reduce: (B, B) => B): Map[K, B]
Разделяет эту итерируемую коллекцию на карту в соответствии с функцией-дискриминатором key. Все значения, имеющие одинаковый дискриминатор, затем преобразуются функцией f и затем сводятся к одному значению с помощью функции reduce.
Это эквивалентно groupBy(key).mapValues(_.map(f).reduce(reduce)), но более эффективно.
def occurrences[A](as: Seq[A]): Map[A, Int] = as.groupMapReduce(identity)(_ => 1)(_ + _)
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Унаследовано от | IterableOps |
|---|
Исходный код
Разделяет элементы на итерируемые коллекции фиксированного размера.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Унаследовано от | IterableOps |
Исходный код
def head: A
Выбирает первый элемент этой итерируемой коллекции.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции не упорядочен.
| Возвращает | первый элемент этой итерируемой коллекции. |
|---|---|
| Исключения |
|
| Унаследовано от | IterableOps |
Исходный код
def headOption: Option[A]
Возвращает первый элемент, если он существует.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции не упорядочен.
| Возвращает | первый элемент этой итерируемой коллекции, если она не пуста, |
|---|---|
| Унаследовано от | IterableOps |
Исходный код
def init: C
Первая часть коллекции без последнего элемента.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Унаследовано от | IterableOps |
|---|
Исходный код
Итерируется по начальным частям (init) этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений init.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | итератор по всем начальным частям этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
def isDefinedAt(key: K): Boolean
Проверяет, содержит ли эта карта привязку для ключа. Этот метод, который реализует абстрактный метод трейта PartialFunction, эквивалентен contains.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | MapOps |
Исходный код
Проверяет, пуста ли коллекция.
Примечание: реализации в подклассах, которые не являются итерируемыми многократно, должны позаботиться о том, чтобы не потреблять элементы при вызове isEmpty.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
override def isTraversableAgain: Boolean
Проверяет, можно ли эту итерируемую коллекцию проходить многократно. Всегда true для Iterables и false для Iterators, если не переопределено.
| Возвращает |
|
|---|---|
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Source
def iterableFactory: IterableFactory[CC]
Объект-компаньон этого итерируемого набора, предоставляющий различные методы создания.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Унаследовано от | IterableOps |
Source
Итератор можно использовать только один раз
| Унаследовано от | IterableOnce |
|---|
Source
def iteratorFrom(start: K): Iterator[(K, V)]
Создает итератор по всем парам ключ/значение, содержащимся в этом отображении, имеющим ключ, равный или больший, чем start в соответствии с порядком этого отображения. x.iteratorFrom(y) эквивалентно, но часто эффективнее, чем x.from(y).iterator.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedMapOps |
Source
Возвращает Stepper для ключей этого отображения. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Source
Собирает все ключи этого отображения в итерируемой коллекции.
| Возвращает | ключи этого отображения в виде итерируемого набора. |
|---|---|
| Унаследовано от | MapOps |
Source
def keysIterator: Iterator[K]
Создает итератор для всех ключей.
| Возвращает | итератор по всем ключам. |
|---|---|
| Унаследовано от | MapOps |
Source
def keysIteratorFrom(start: K): Iterator[K]
Создает итератор по всем ключам (или элементам), содержащимся в этой коллекции, которые больше или равны start в соответствии с порядком этой коллекции. x.keysIteratorFrom(y) эквивалентно, но часто более эффективно, чем x.from(y).keysIterator.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedMapOps |
Source
| Возвращает | Количество элементов в этой коллекции, если его можно вычислить с малой стоимостью, -1 в противном случае. Небольшая стоимость обычно означает: Не требуется обход коллекции. |
|---|---|
| Унаследовано от | IterableOnce |
Source
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции не является упорядоченным.
| Возвращает | Последний элемент этой итерируемой коллекции. |
|---|---|
| Исключение |
|
| Унаследовано от | IterableOps |
Source
def lastKey: K
Возвращает последний ключ коллекции.
| Унаследовано от | SortedMapOps |
|---|
Source
def lastOption: Option[A]
Необязательно выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции не является упорядоченным.
| Возвращает | последний элемент этой итерируемой коллекции, если она непуста, |
|---|---|
| Унаследовано от | IterableOps |
Source
Преобразует эту частичную функцию в обычную функцию, возвращающую Option результат.
| Возвращает | функция, которая принимает аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Source
Создает новое отсортированное отображение, применяя функцию ко всем элементам этого отображения.
| Параметры значения |
|
|---|---|
| Возвращает | новое отображение, полученное путем применения заданной функции |
| Унаследовано от | SortedMapOps |
Source
def map[K2, V2](f: ((K, V)) => (K2, V2)): CC[K2, V2]
Создает новое отображение, применяя функцию ко всем элементам этого отображения.
| Параметры значения |
|
|---|---|
| Возвращает | новое отображение, полученное путем применения заданной функции |
| Унаследовано от | MapOps |
Source
def map[B](f: ((K, V)) => B): CC[B]
Создает новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путем применения заданной функции |
| Унаследовано от | IterableOps |
Source
def mapFactory: MapFactory[CC]
Объект-компаньон этого отображения, предоставляющий различные методы создания.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Унаследовано от | MapOps |
Source
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этого набора по отношению к упорядочиванию |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит элемент с наибольшим ключом, меньшим заданного ключа.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SortedMapOps |
Источник
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этого набора с наибольшим значением, измеренным функцией f по отношению к упорядочиванию |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащей первый элемент этого набора с наибольшим значением, измеренным функцией f по отношению к упорядочиванию |
| Унаследовано от | IterableOnceOps |
Источник
Находит наибольший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащей наибольший элемент этого набора по отношению к упорядочиванию |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этого набора по отношению к упорядочиванию |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Найдите элемент с наименьшим ключом, большим или равным заданному ключу.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SortedMapOps |
Исходный код
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не будет завершено для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наименьшим значением, измеренным функцией f относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не будет завершено для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение варианта, содержащее первый элемент этой коллекции с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Исходный код
Находит наименьший элемент.
Примечание: не будет завершено для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение варианта, содержащее наименьший элемент этой коллекции относительно порядка |
| Унаследовано от | IterableOnceOps |
Исходный код
Отображает все элементы этой коллекции в строке.
Делегирует addString, который может быть переопределен.
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (с точки зрения метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
Отображает все элементы этой коллекции в строке с использованием разделительной строки.
Делегирует addString, который может быть переопределен.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (с точки зрения метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке, используя начальную, конечную и разделительные строки.
Делегирует addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, не пуста ли коллекция.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Компонует эту частичную функцию с резервной частичной функцией, которая применяется там, где эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, имеющая в качестве области определения объединение областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Источник
| Унаследовано от | SortedOps |
|---|
Источник
Пара, во-первых, всех элементов, удовлетворяющих предикату p, и, во-вторых, всех элементов, которые не удовлетворяют. Интересно, потому что разделит коллекцию на две части.
Стандартная реализация здесь должна дважды пройтись по коллекции. У строгих коллекций есть переопределённый вариант partition в StrictOptimizedIterableOps, который требует только одного прохода.
| Унаследовано от | IterableOps |
|---|
Источник
def partitionMap[A1, A2](f: ((K, V)) => 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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пара итерируемых коллекций: первая состоит из тех значений, возвращённых функцией |
| Унаследовано от | IterableOps |
Источник
Перемножает элементы этой коллекции.
Примечание: не завершится для коллекций бесконечной размерности.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этой коллекции по отношению к оператору |
| Унаследовано от | IterableOnceOps |
Источник
def range(from: K, until: K): C
Создаёт проекцию диапазона этой коллекции с нижней и верхней границами.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Источник
def rangeFrom(from: K): C
Создаёт проекцию диапазона этой коллекции без верхней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Источник
Создаёт проекцию диапазона этой коллекции. Любые изменения в проекции диапазона будут обновлять эту коллекцию и наоборот.
Примечание: ключи не гарантированы как согласованные между этой коллекцией и проекцией. Это имеет место для буферов, где индексирование относительно проекции.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Источник
def rangeTo(to: K): C
Создаёт проекцию диапазона этой коллекции без нижней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedMapOps |
Источник
def rangeUntil(until: K): C
Создаёт проекцию диапазона этой коллекции без нижней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Source
def reduce[B >: (K, V)](op: (B, B) => B): B
Применяет заданный ассоциативный бинарный оператор к элементам этой коллекции.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Результат применения оператора reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
def reduceLeft[B >: (K, V)](op: (B, (K, V)) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
def reduceLeftOption[B >: (K, V)](op: (B, (K, V)) => B): Option[B]
Возможная обработка бинарного оператора над элементами этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | объект Option, содержащий результат |
| Унаследовано от | IterableOnceOps |
Source
def reduceOption[B >: (K, V)](op: (B, B) => B): Option[B]
Применяет заданный ассоциативный бинарный оператор к элементам этой коллекции, если они есть.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Значение Option, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Source
def reduceRight[B >: (K, V)](op: ((K, V), B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
def reduceRightOption[B >: (K, V)](op: ((K, V), B) => B): Option[B]
Применяет бинарный оператор ко всем элементам этого набора, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен, или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | вариант значения, содержащий результат |
| Унаследовано от | IterableOnceOps |
Source
def removed(key: K): C
Удаляет ключ из этой карты, возвращая новую карту.
| Параметры значения |
|
|---|---|
| Возвращает | новая карта без привязки для ключа |
| Унаследовано от | MapOps |
Source
def removedAll(keys: IterableOnce[K]): C
Создаёт новую неизменяемую карту из этой неизменяемой карты, удаляя все элементы другой коллекции.
Примечание: даже при применении к представлению или ленивой коллекции элементы будут всегда форсироваться.
| Параметры значения |
|
|---|---|
| Возвращает | новая неизменяемая карта, содержащая все элементы текущей неизменяемой карты, за исключением одного меньшего вхождения каждого из элементов |
| Унаследовано от | MapOps |
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
Комбинирует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализована через applyOrElse и, следовательно, потенциально более эффективна. Использование runWith позволяет избежать двойной оценки совпадений шаблонов и условий для частичных функций-литералов.
| Параметры значения |
|
|---|---|
| Возвращает | функция, которая отображает аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Source
def scan[B >: (K, V)](z: B)(op: (B, B) => B): CC[B]
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий префиксное сканирование элементов в этом итерируемом наборе |
| Унаследовано от | IterableOps |
Исходный код
def scanLeft[B](z: B)(op: (B, (K, V)) => B): CC[B]
Создает итерируемый набор, содержащий кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для наборов бесконечной размерности.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | набор с промежуточными результатами |
| Унаследовано от | IterableOps |
Исходный код
def scanRight[B](z: B)(op: ((K, V), B) => B): CC[B]
Создает набор, содержащий кумулятивные результаты применения оператора справа налево. Голова набора — последний кумулятивный результат.
Примечание: не завершится для наборов бесконечной размерности.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
Примечание: даже при применении к представлению или ленивому набору, элементы всегда будут принудительно вычисляться.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | набор с промежуточными результатами |
| Унаследовано от | IterableOps |
Исходный код
Размер этого набора.
Примечание: не завершится для наборов бесконечной размерности.
| Возвращает | количество элементов в этом наборе. |
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
Сравнивает размер этого итерируемого набора с размером другого Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Реализация метода не вызывает |
| Унаследовано от | IterableOps |
Исходный код
Сравнивает размер этого итерируемого набора с тестовым значением.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Метод, как он реализован здесь, не вызывает |
| См. также | |
| Унаследовано от | IterableOps |
Исходный код
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
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемый набор, содержащий элементы, большие или равные индексу |
| Унаследовано от | IterableOps |
Исходный код
Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения их, как это делается в grouped).
Возвращаемый итератор будет пустым, когда вызывается на пустом наборе. Последний элемент, который производит итератор, может быть меньше размера окна, когда исходный набор не исчерпывается окном до него и его последний элемент не пропущен шагом перед ним.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения их, как это делается в grouped).
Пустой набор возвращает пустой итератор, а набор, содержащий меньше элементов, чем размер окна, возвращает итератор, который произведёт исходный набор как свой единственный элемент.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
def sortedMapFactory: SortedMapFactory[CC]
Компаньон-объект этого отсортированного набора, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Унаследовано от | SortedMapOps |
Источник
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не приводит к побочным эффектам.
Примечание: может возвращать разные результаты при разных запусках, если только тип основной коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пара, состоящая из самого длинного префикса этой итерируемой коллекции, элементы которой удовлетворяют |
| Унаследовано от | IterableOps |
Источник
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты при разных запусках, если только тип основной коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пара итерируемых коллекций, состоящая из первых |
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
Возвращает 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 могут быть преобразованы только в последовательные потоки.
| Унаследовано от | IterableOnce |
|---|
Источник
Суммирует элементы этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумма всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Источник
def tail: C
Остаток коллекции без ее первого элемента.
| Унаследовано от | IterableOps |
|---|
Источник
Итерируется по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений tail.
| Возвращает | итератор по всем хвостам этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Выбирает первые n элементов.
Примечание: может возвращать разные результаты при разных запусках, если только тип основной коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемая коллекция, содержащая только первые |
| Унаследовано от | IterableOps |
Источник
Выбирает последние n элементов.
Примечание: может возвращать разные результаты при разных запусках, если только тип основной коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемая коллекция, содержащая только последние |
| Унаследовано от | IterableOps |
Источник
Берет самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если только тип основной коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный префикс этой итерируемой коллекции, элементы которой удовлетворяют предикату |
| Унаследовано от | IterableOps |
Источник
override def tapEach[U](f: ((K, V)) => U): C
Применяет функцию с побочным эффектом к каждому элементу в этой коллекции. Строгие коллекции будут применять f к своим элементам немедленно, в то время как ленивые коллекции, такие как представления и LazyLists, будут применять f к каждому элементу только при его вычислении и каждый раз, когда этот элемент вычисляется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | такая же логическая коллекция, как и эта |
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Source
При заданном фабричном методе коллекции factory, преобразуйте эту коллекцию в соответствующее представление для текущего типа элемента A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Source
Преобразование коллекции в массив.
Примечание к реализации: НЕ вызывайте метод Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
def toIndexedSeq: IndexedSeq[A]
| Унаследовано от | IterableOnceOps |
|---|
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
| Возвращает | Эту коллекцию в виде |
|---|---|
| Унаследовано от | IterableOnceOps |
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
Возвращает строковое представление объекта.
Представление по умолчанию зависит от платформы.
| Возвращает | строковое представление объекта. |
|---|---|
| Классы определений | Function1 -> Any |
| Унаследовано от | Function1 |
Source
| Унаследовано от | 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 в выражении сопоставления с образцом.
| Унаследовано от | PartialFunction |
|---|
Source
def unzip[A1, A2](implicit asPair: ((K, V)) => (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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пара итерируемых коллекций, содержащих первую и, соответственно, вторую половину каждой пары элементов этой итерируемой коллекции. |
| Унаследовано от | IterableOps |
Source
def unzip3[A1, A2, A3](implicit asTriple: ((K, V)) => (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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | тройка итерируемых коллекций, содержащих первый, второй и, соответственно, третий член каждой тройки элементов этой итерируемой коллекции. |
| Унаследовано от | IterableOps |
Source
Возвращает Stepper для значений этой карты. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Source
Собирает все значения этой карты в итерируемой коллекции.
| Возвращает | значения этой карты в виде итерируемой коллекции. |
|---|---|
| Унаследовано от | MapOps |
Source
def valuesIterator: Iterator[V]
Создает итератор для всех значений в этой карте.
| Возвращает | итератор по всем значениям, которые связаны с некоторым ключом в этой карте. |
|---|---|
| Унаследовано от | MapOps |
Source
def valuesIteratorFrom(start: K): Iterator[V]
Создаёт итератор по всем значениям, содержащимся в этом отображении, которые связаны с ключом, больше или равным start согласно порядку этого отображения. x.valuesIteratorFrom(y) эквивалентно, но часто более эффективно, чем x.from(y).valuesIterator.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedMapOps |
Source
Представление элементов этого набора.
| Классы определения | MapOps -> IterableOps |
|---|---|
| Унаследовано от | MapOps |
Source
Создаёт нестрогий фильтр этого итерируемого набора.
Примечание: разница между c filter p и c withFilter p заключается в том, что первый создаёт новый набор, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | объект класса |
| Унаследовано от | IterableOps |
Source
def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора путём комбинирования соответствующих элементов в пары. Если один из двух наборов длиннее другого, оставшиеся элементы игнорируются.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и |
| Унаследовано от | IterableOps |
Source
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора путём комбинирования соответствующих элементов в пары. Если один из двух наборов короче другого, используются элементы-заполнители для расширения более короткого набора до длины более длинного.
| Параметры значения |
|
|---|---|
| Возвращает | новый набор типа Если этот итерируемый набор короче, чем |
| Унаследовано от | IterableOps |
Source
def zipWithIndex: CC[(A, Int)]
Комбинирует этот итерируемый набор с его индексами.
| Возвращает | Новый итерируемый набор, содержащий пары, состоящие из всех элементов этого итерируемого набора, соединённых с их индексом. Индексы начинаются с |
|---|---|
| Пример | |
| Унаследовано от | IterableOps |
© 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/SortedMapOps.html