Тракт scala.collection.immutable.Map
Базовый тип неизменяемых словарей
| Суперайтепи | 16 типов |
|---|---|
| Известные подтипы | 16 типов |
Наследуемые классы
Исходный код
Реализующий класс набора, возвращаемого keySet
| Наследованный от | MapOps |
|---|
Конкретные методы
Исходный код
| Классы-определения | Map -> MapOps |
|---|
Исходный код
| Классы-определения | IterableOnceOps |
|---|
Исходный код
def withDefault[V1 >: V](d: K => V1): Map[K, V1]
Тот же словарь с заданной функцией по умолчанию. Примечание: значение по умолчанию используется только для apply. Другие методы, такие как get, contains, iterator, keys, и т. д., не затронуты withDefault.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
| Параметры значения |
|
|---|---|
| Возвращает | обертка карты с заданным значением по умолчанию |
Источник
def withDefaultValue[V1 >: V](d: V1): Map[K, V1]
Та же карта с заданным значением по умолчанию. Примечание: значение по умолчанию используется только для apply. Другие методы, такие как get, contains, iterator, keys, и т. д., не затрагиваются withDefaultValue.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
| Параметры значения |
|
|---|---|
| Возвращает | обертка карты с заданным значением по умолчанию |
Унаследованные методы
Источник
Псевдоним для updated
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Новая карта с добавленной связью в эту карту. |
| Классы определений | MapOps -> MapOps |
| Унаследованно от | MapOps |
Источник@inline
Псевдоним для concat
| Унаследованно от | IterableOps |
|---|
Источник
Псевдоним для concat
| Унаследованно от | MapOps |
|---|
Источник@inline
Псевдоним для removed
| Унаследованно от | MapOps |
|---|
Источник@inline
Псевдоним для removedAll
| Классы определений | MapOps -> MapOps |
|---|---|
| Унаследованно от | MapOps |
Источник@inline
Добавляет все элементы этого набора в строковый буфер. Текст, который будет записан, состоит из строковых представлений (согласно методу toString) всех элементов этого набора без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
| Параметры значения |
|
|---|---|
| Возвращает | строковый буфер |
| Унаследованно от | IterableOnceOps |
Source@inline
Добавляет все элементы этой коллекции в строковый буфер с использованием разделителя. Записываемый текст состоит из строковых представлений (относительно метода toString) всех элементов этой коллекции, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
| Параметры значения |
|
|---|---|
| Возвращает | строковый буфер |
| Унаследовано от | IterableOnceOps |
Source
| Классы определения | MapOps -> IterableOnceOps |
|---|---|
| Унаследовано от | MapOps |
Source
Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt для результирующей частичной функции может применить первую частичную функцию и выполнить ее побочный эффект. Для повышения эффективности рекомендуется вызывать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Source
override def andThen[C](k: V => C): PartialFunction[K, C]
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип выполнения функции является PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, возможно, суженной указанной функцией, которая отображает аргументы |
| Классы определения | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Source@throws(scala.throws.$lessinit$greater$default$1[scala.NoSuchElementException])
def apply(key: K): V
Извлекает значение, связанное с данным ключом. Этот метод вызывает метод default карты, если нет соответствия между заданным ключом и значением. Если не переопределено, метод default выбрасывает NoSuchElementException.
| Параметры значения |
|
|---|---|
| Возвращает | значение, связанное с заданным ключом, или результат метода |
| Унаследовано от | MapOps |
Исходный код
override def applyOrElse[K1 <: K, V1 >: V](x: K1, default: K1 => V1): V1
| Классы-предки | MapOps -> PartialFunction |
|---|---|
| Унаследовано от | MapOps |
Исходный код
| Унаследовано от | Map |
|---|
Исходный код
| Унаследовано от | IterableOps |
|---|
Исходный код
Создаёт новую коллекцию, применяя частичную функцию ко всем элементам этой карты, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая карта, полученная в результате применения заданной частичной функции |
| Унаследовано от | MapOps |
Исходный код
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее результат применения pf к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Компонует другую частичную функцию k с этой частичной функцией таким образом, чтобы эта частичная функция применялась к результатам k.
Обратите внимание, что вызов isDefinedAt на результирующей частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения другой частичной функции, суженной с помощью этой частичной функции, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Source@unspecialized
def compose[A](g: A => K): A => V
Компонует два экземпляра Function1 в новый Function1, при этом эта функция применяется последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Source
Возвращает новую итерируемую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов итерируемой коллекции — это наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, которая содержит все элементы этой итерируемой коллекции, за которыми следуют все элементы |
| Унаследовано от | IterableOps |
Source
Возвращает новую карту, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов карты — это наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры значения |
|
|---|---|
| Возвращает | новая карта, которая содержит все элементы этой карты, за которыми следуют все элементы |
| Унаследовано от | MapOps |
Source
Проверяет, содержит ли эта карта привязку для ключа.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | MapOps |
Source
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует отбросить. Использование его не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Source@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Копирование элементов в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование завершается, когда скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Значения параметров |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, должен быть отброшен. Использование итератора после вызова метода не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Source@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Копирование элементов в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование завершается, когда скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Значения параметров |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, должен быть отброшен. Использование итератора после вызова метода не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, соответствует ли каждый элемент итератора этой коллекции соответствующему элементу другой коллекции, удовлетворяя предикату проверки.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Значения параметров |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
Подсчитывает количество элементов в коллекции, удовлетворяющих предикату.
Примечание: не завершится для коллекций бесконечного размера.
| Значения параметров |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Source@throws(scala.throws.$lessinit$greater$default$1[scala.NoSuchElementException])
def default(key: K): V
Определяет вычисление значения по умолчанию для карты, возвращаемое, когда ключ не найден. Реализованный здесь метод выбрасывает исключение, но может быть переопределён в подклассах.
| Параметры значения |
|
|---|---|
| Унаследовано от | MapOps |
Исходный код
| Унаследовано от | IterableOps |
|---|
Исходный код
Выбирает все элементы, кроме последних n.
Примечание: может возвращать разные результаты при разных запусках, если тип базового объекта не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме последних |
| Унаследовано от | IterableOps |
Исходный код
| Унаследовано от | IterableOps |
|---|
Исходный код
def elementWise: ElementWiseExtractor[K, V]
Возвращает объект-экстрактор с методом 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 |
Исходный код
| Классы определения | MapFactoryDefaults -> IterableOps |
|---|---|
| Унаследовано от | MapFactoryDefaults |
Исходный код
Равенство карт реализовано с использованием метода поиска get. Этот метод возвращает true, если
аргумент
oявляетсяMap,у двух карт одинаковый размер, и
для каждой пары
(key, value)в этой карте,other.get(key) == Some(value).
Реализация equals проверяет метод canEqual, поэтому подклассы Map могут сузить равенство до конкретных типов карт. Реализации Map в стандартной библиотеке могут быть сравнимы, их методы canEqual возвращают true.
Примечание: метод equals соблюдает законы равенства (симметрия, транзитивность) только если две карты используют одну и ту же функцию эквивалентности ключей в своей операции поиска. Например, операция эквивалентности ключей в scala.collection.immutable.TreeMap определяется её упорядочением. Сравнение TreeMap с HashMap приводит к неожиданным результатам, если ordering.equiv(k1, k2) (используемая для поиска в TreeMap отличается от k1 == k2 (используемая для поиска в HashMap).
scala> import scala.collection.immutable._
scala> val ord: Ordering[String] = _ compareToIgnoreCase _
scala> TreeMap("A" -> 1)(ord) == HashMap("a" -> 1)
val res0: Boolean = false
scala> HashMap("a" -> 1) == TreeMap("A" -> 1)(ord)
val res1: Boolean = true
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Классы определения | Map -> Equals -> Any |
| Унаследовано от | Map |
Source
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: для коллекций бесконечного размера может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | IterableOnceOps |
Source
| Унаследовано от | IterableOps |
|---|
Source
| Унаследовано от | IterableOps |
|---|
Source
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: для коллекций бесконечного размера может не завершиться.
Примечание: результаты могут отличаться при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | значение типа Option, содержащее первый элемент в коллекции, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Source
| Унаследовано от | IterableOps |
|---|
Source
Создает новую карту, применяя функцию ко всем элементам этой карты и используя элементы полученных коллекций.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новая карта, полученная в результате применения заданной функции, возвращающей коллекцию |
| Унаследовано от | MapOps |
Source
| Унаследовано от | IterableOps |
|---|
Source
def fold[A1 >: (K, V)](z: A1)(op: (A1, A1) => A1): A1
Складывает элементы этой коллекции, используя заданный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективного порядка обхода.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
Примечание: для коллекций бесконечного размера не завершится.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат применения оператора fold |
| Унаследовано от | IterableOnceOps |
Источник
def foldLeft[B](z: B)(op: (B, (K, V)) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции, слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
def foldRight[B](z: B)(op: ((K, V), B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению, справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, выполняется ли предикат для всех элементов этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в инференции типов scalac.
| Унаследовано от | IterableOnceOps |
|---|
Источник
def foreachEntry[U](f: (K, V) => U): Unit
Применяет f к каждой паре ключ/значение для ее побочных эффектов. Примечание: параметр [U] необходим для помощи в инференции типов scalac.
| Наследуется от | MapOps |
|---|
Источник
| Классы-предки | MapFactoryDefaults -> IterableOps |
|---|---|
| Наследуется от | MapFactoryDefaults |
Источник
Возвращает значение, связанное с ключом.
| Параметры |
|
|---|---|
| Возвращаемое значение | объект Option, содержащий значение, связанное с |
| Наследуется от | 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 |
Источник
| Классы-определения | Map -> Any |
|---|---|
| Унаследовано от | Map |
Источник
def head: (K, V)
Выбирает первый элемент этой итерируемой коллекции.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | первый элемент этой итерируемой коллекции. |
|---|---|
| Выбрасывает |
|
| Унаследовано от | IterableOps |
Источник
def headOption: Option[(K, V)]
Возвращает первый элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | первый элемент этой итерируемой коллекции, если она не пустая, |
|---|---|
| Унаследовано от | IterableOps |
Источник
Часть коллекции без последнего элемента.
Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно обрабатывать элементы.
| Унаследовано от | IterableOps |
|---|
Источник
Перебирает начальные части этой итерируемой коллекции. Первое значение — это сама коллекция, а последнее — пустая коллекция, промежуточные значения — результаты последовательного применения init.
Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно обрабатывать элементы.
| Возвращает | итератор по всем начальным частям этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
def isDefinedAt(key: K): Boolean
Проверяет, содержит ли эта карта привязку для ключа. Этот метод, реализующий абстрактный метод тракта PartialFunction, эквивалентен contains.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | MapOps |
Источник
Проверяет, пусто ли коллекция.
Примечание: Реализации в подклассах, которые не являются многократно проходимыми, должны позаботиться о том, чтобы не использовать никакие элементы, когда isEmpty вызывается.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
override def isTraversableAgain: Boolean
| Классы-предки | IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | IterableOps |
Источник
| Классы-предки | Iterable -> Iterable -> IterableOps |
|---|---|
| Унаследовано от | Iterable |
Источник
Итератор может быть использован только один раз
| Унаследовано от | IterableOnce |
|---|
Источник
| Классы-предки | MapOps -> MapOps |
|---|---|
| Унаследовано от | MapOps |
Источник
Возвращает Stepper для ключей этой карты. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Источник
Собирает все ключи этой карты в итерируемой коллекции.
| Возвращает | ключи этой карты в виде итерируемой коллекции. |
|---|---|
| Унаследовано от | MapOps |
Источник
def keysIterator: Iterator[K]
Создаёт итератор для всех ключей.
| Возвращает | итератор по всем ключам. |
|---|---|
| Унаследовано от | MapOps |
Источник
| Возвращает | Количество элементов в этой коллекции, если его можно вычислить недорого, иначе -1. Недорого обычно означает: не требующее обхода коллекции. |
|---|---|
| Унаследовано от | IterableOnce |
Источник
def last: (K, V)
Выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не является упорядоченным.
| Возвращает | Последний элемент этой итерируемой коллекции. |
|---|---|
| Выбрасывает |
|
| Унаследовано от | IterableOps |
Источник
def lastOption: Option[(K, V)]
Возвращает последний элемент (или None, если коллекция пуста).
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не является упорядоченным.
| Возвращает | последний элемент этой итерируемой коллекции, если она не пуста, |
|---|---|
| Унаследовано от | 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 |
Источник
Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.
| Возвращает | функция, которая принимает аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Источник
| Унаследовано от | IterableOps |
|---|
Источник
Создаёт новую карту, применяя функцию ко всем элементам этой карты.
| Параметры значения |
|
|---|---|
| Возвращает | новая карта, полученная путём применения заданной функции |
| Унаследовано от | MapOps |
Источник
Находит максимальный элемент.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этой коллекции относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа опция, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа опция, содержащее наибольший элемент этой коллекции относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этой коллекции относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | первый элемент в этом наборе с наименьшим значением, измеренным функцией f относительно порядка |
| Throws |
|
| Inherited from | IterableOnceOps |
Source
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | значения параметра Option, содержащее первый элемент в этом наборе с наименьшим значением, измеренным функцией f, относительно порядка |
| Inherited from | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | значения параметра Option, содержащее наименьший элемент в этом наборе относительно порядка |
| Inherited from | IterableOnceOps |
Source@inline
Отображает все элементы этого набора в строке.
Делегирует addString, который может быть переопределен.
| Returns | строковое представление этого набора. В результирующей строке строковые представления (относительно метода |
|---|---|
| Inherited from | IterableOnceOps |
Source@inline
Отображает все элементы этого набора в строке с использованием разделительной строки.
Делегирует addString, который может быть переопределен.
| Value parameters |
|
|---|---|
| Returns | строковое представление этого набора. В результирующей строке строковые представления (относительно метода |
| Example |
|
| Inherited from | IterableOnceOps |
Source
Отображает все элементы этого набора в строке, используя начальную, конечную и разделительные строки.
Делегирует addString, который может быть переопределен.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
| Классы-определения | MapFactoryDefaults -> IterableOps |
|---|---|
| Унаследовано от | MapFactoryDefaults |
Источник@deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
Проверяет, не является ли коллекция пустой.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Комбинирует эту частичную функцию с резервной частичной функцией, которая применяется в тех случаях, когда эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, у которой область определения — объединение областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Источник
Пара, состоящая из, во-первых, всех элементов, которые удовлетворяют предикату p, и, во-вторых, всех элементов, которые не удовлетворяют ему. Интересно тем, что она разделяет коллекцию на две части.
Предоставляемая здесь реализация по умолчанию требует двух проходов по коллекции. Строгие коллекции имеют переопределённую версию partition в StrictOptimizedIterableOps, которая требует только одного прохода.
| Унаследовано от | IterableOps |
|---|
Источник
Применяет функцию 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 reduce[B >: (K, V)](op: (B, B) => B): B
Редуцирует элементы этого набора, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | Результат применения оператора reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceLeft[B >: (K, V)](op: (B, (K, V)) => B): B
Применяет бинарный оператор ко всем элементам этого набора слева направо.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен, или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceLeftOption[B >: (K, V)](op: (B, (K, V)) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого набора слева направо.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен, или оператор не является ассоциативным и коммутативным.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
def reduceOption[B >: (K, V)](op: (B, B) => B): Option[B]
Редуцирует элементы этой коллекции, если таковые имеются, с помощью указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение option, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Источник
def reduceRight[B >: (K, V)](op: ((K, V), B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции, двигаясь справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceRightOption[B >: (K, V)](op: ((K, V), B) => B): Option[B]
Опционально применяет бинарный оператор ко всем элементам этой коллекции, двигаясь справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
Удаляет ключ из этой карты, возвращая новую карту.
| Параметры значений |
|
|---|---|
| Возвращает | новая карта без привязки для ключа |
| Унаследовано от | MapOps |
Источник
Создает новую неизменяемую карту из этой неизменяемой карты, удаляя все элементы из другой коллекции.
Примечание: даже при применении к представлению или ленивой коллекции, она всегда будет принуждать элементы.
| Параметры значения |
|
|---|---|
| Возвращает | новая неизменяемая карта, содержащая все элементы текущей неизменяемой карты, за исключением одного меньшего вхождения каждого из элементов |
| Унаследовано от | MapOps |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Компонует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для своих побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализовано через applyOrElse и, следовательно, потенциально более эффективно. Использование runWith предотвращает двойную оценку совпадений шаблонов и условий для литералов частичных функций.
| Параметры значения |
|
|---|---|
| Возвращает | функция, которая отображает аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Источник
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, содержащая префиксное сканирование элементов в этой итерируемой коллекции |
| Унаследовано от | IterableOps |
Источник
| Унаследовано от | IterableOps |
|---|
Источник
Создает коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Головка коллекции — это последний кумулятивный результат.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Примечание: даже при применении к представлению или ленивой коллекции всегда принудительно заставляет применять элементы.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Унаследовано от | IterableOps |
Источник
Размер этой коллекции.
Примечание: не завершит работу для коллекций бесконечного размера.
| Возвращает | количество элементов в этой коллекции. |
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Сравнивает размер этого итерируемого набора с размером другого Iterable.
| Параметры |
|
|---|---|
| Возвращаемое значение |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Реализация этого метода не вызывает |
| Наследуется от | IterableOps |
Source
Сравнивает размер этого итерируемого набора со значением-тестом.
| Параметры |
|
|---|---|
| Возвращаемое значение |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Реализация этого метода не вызывает |
| См. также | |
| Наследуется от | IterableOps |
Source@inline
final def sizeIs: SizeCompareOps
Возвращает класс значений, содержащий операции для сравнения размера этого итерируемого набора со значением-тестом.
Эти операции реализованы в терминах sizeCompare(Int) и позволяют использовать следующие более читабельные выражения:
this.sizeIs < size // this.sizeCompare(size) < 0 this.sizeIs <= size // this.sizeCompare(size) <= 0 this.sizeIs == size // this.sizeCompare(size) == 0 this.sizeIs != size // this.sizeCompare(size) != 0 this.sizeIs >= size // this.sizeCompare(size) >= 0 this.sizeIs > size // this.sizeCompare(size) > 0
| Наследуется от | IterableOps |
|---|
Source
| Наследуется от | IterableOps |
|---|
Source
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" по ним (в отличие от разбиения их, как это делается в grouped).
Возвращаемый итератор будет пустым при вызове на пустом наборе. Последний элемент, который генерирует итератор, может быть меньше размера окна, когда исходный набор не исчерпан окном до него, и его последний элемент не пропущен шагом перед ним.
| Параметры |
|
|---|---|
| Возвращаемое значение | Итератор, генерирующий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Наследуется от | IterableOps |
Source
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" по ним (в отличие от разбиения их, как это делается в grouped.)
Пустой коллекцией возвращается пустой итератор, а непустой коллекцией, содержащей меньше элементов, чем размер окна, возвращается итератор, который вернёт исходную коллекцию как единственный элемент.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
| Унаследовано от | IterableOps |
|---|
Источник
| Классы-предки | 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. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Stepper могут быть преобразованы только в последовательные потоки.
| Унаследовано от | IterableOnce |
|---|
Источник
Суммирует элементы этой коллекции.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумма всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Источник
Остальная часть коллекции без первого элемента.
| Унаследовано от | IterableOps |
|---|
Source
Итерирует по хвостам этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее — пустым итерируемым набором, а промежуточные значения — результатами последовательных применений tail.
| Возвращает | итератор по всем хвостам этого итерируемого набора |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Source
| Унаследовано от | IterableOps |
|---|
Source
Выбирает последние n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры |
|
|---|---|
| Возвращает | итерируемый набор, состоящий только из последних |
| Унаследовано от | IterableOps |
Source
Возвращает самое длинное префиксное подмножество элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры |
|
|---|---|
| Возвращает | самое длинное префиксное подмножество этого итерируемого набора, все элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Source
| Классы-предки | IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | IterableOps |
Source
При заданном фабричном методе создания коллекции factory, преобразует эту коллекцию в соответствующую форму для текущего типа элемента A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Source
Преобразует коллекцию в массив.
Примечание: НЕ вызывайте Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Source@inline
| Унаследовано от | IterableOnceOps |
|---|
Source
def toIndexedSeq: IndexedSeq[(K, V)]
| Унаследованно от | IterableOnceOps |
|---|
Source
| Унаследованно от | IterableOnceOps |
|---|
Source
| Возвращает | Это коллекция в виде |
|---|---|
| Унаследованно от | IterableOnceOps |
Source
| Унаследованно от | IterableOnceOps |
|---|
Source
| Определяющие классы | Map -> Function1 -> Iterable -> Any |
|---|---|
| Унаследованно от | Map |
Source
| Унаследованно от | IterableOnceOps |
|---|
Source
Эта функция преобразует все значения отображений, содержащихся в этом отображении, с помощью функции f.
| Параметры значения |
|
|---|---|
| Возвращает | обновленное отображение |
| Унаследованно от | MapOps |
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
Преобразует это итерируемое множество пар в два множества из первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | пара итерируемых множеств, содержащая первую и соответственно вторую половину каждой пары элементов этого итерируемого множества. |
| Унаследовано от | IterableOps |
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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | тройка итерируемых множеств, содержащая первый, второй и соответственно третий член каждой тройки элементов этого итерируемого множества. |
| Унаследовано от | IterableOps |
Source
Создаёт новую карту, обновлённую заданной парой ключ/значение.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | Новая карта с добавленной новой парой ключ/значение. <недопустимая аннотация inheritdoc> |
| Унаследовано от | MapOps |
Source
Обновляет отображение для указанного ключа и его текущего необязательно сопоставленного значения (Some если есть текущее отображение, None если нет).
Если функция переопределения возвращает Some(v), отображение обновляется новым значением v. Если функция переопределения возвращает None, отображение удаляется (или остаётся отсутствующим, если изначально отсутствовало). Если сама функция вызывает исключение, исключение перебрасывается, а текущее отображение остаётся без изменений.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | Новая карта с обновлённым отображением с ключом |
| Унаследовано от | MapOps |
Source
Возвращает Stepper для значений этой карты. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Source
Собирает все значения этой карты в итерируемом множестве.
| Возвращает | значения этой карты в виде итерируемого объекта. |
|---|---|
| Унаследовано от | MapOps |
Источник
def valuesIterator: Iterator[V]
Создаёт итератор для всех значений в этой карте.
| Возвращает | итератор по всем значениям, связанным с каким-либо ключом в этой карте. |
|---|---|
| Унаследовано от | MapOps |
Источник
| Классы-предки | MapOps -> IterableOps |
|---|---|
| Унаследовано от | MapOps |
Источник
| Классы-предки | MapFactoryDefaults -> IterableOps |
|---|---|
| Унаследовано от | MapFactoryDefaults |
Источник
Возвращает итерируемое множество, образованное из этого итерируемого множества и другого итерируемого множества путём объединения соответствующих элементов в пары. Если одно из двух множеств длиннее другого, его оставшиеся элементы игнорируются.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новое итерируемое множество, содержащее пары, состоящие из соответствующих элементов этого итерируемого множества и |
| Унаследовано от | IterableOps |
Источник
Возвращает итерируемое множество, образованное из этого итерируемого множества и другого итерируемого множества путём объединения соответствующих элементов в пары. Если одно из двух множеств короче другого, для дополнения более короткого множества до длины более длинного используются заполнители.
| Параметры значения |
|
|---|---|
| Возвращает | новое множество типа |
| Унаследовано от | IterableOps |
Источник
| Унаследовано от | IterableOps |
|---|
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/collection/immutable/Map.html