Класс scala.collection.mutable.CollisionProofHashMap
final class CollisionProofHashMap[K, V](initialCapacity: Int, loadFactor: Double)(implicit ordering: Ordering[K]) extends AbstractMap[K, V] with MapOps[K, V, Map, CollisionProofHashMap[K, V]] with StrictOptimizedIterableOps[(K, V), Iterable, CollisionProofHashMap[K, V]] with StrictOptimizedMapOps[K, V, Map, CollisionProofHashMap[K, V]]
Этот класс реализует изменяемые карты, используя хеш-таблицу с красно-черными деревьями в ведрах для обеспечения хорошей производительности в худшем случае при столкновениях хешей. Для типа элемента требуется Ordering. Равенство, определяемое по Ordering, должно быть согласованным с equals и hashCode. Универсальное равенство числовых типов не поддерживается (аналогично AnyRefMap).
| См. также | "Обзор библиотеки коллекций Scala" раздел о |
|---|---|
| Наследуемые типы | 28 типов |
Конструкторы
Исходный код
Конкретные методы
Исходный код@inline
Псевдоним для concat
| Классы определений | MapOps |
|---|
Исходный код
| Классы определений | Growable |
|---|
Исходный код
def addOne(elem: (K, V)): CollisionProofHashMap[K, V]
Исходный код@throws(scala.throws.$lessinit$greater$default$1[scala.NoSuchElementException])
override def apply(key: K): V
| Классы определений | MapOps -> Function1 |
|---|
Исходный код
| Классы определений | MapOps -> Builder -> Clearable |
|---|
Исходный код
def collect[K2, V2](pf: PartialFunction[(K, V), (K2, V2)])(implicit @implicitNotFound ordering: Ordering[K2]): CollisionProofHashMap[K2, V2]
Создает новую отсортированную карту, применяя частичную функцию ко всем элементам этой изменяемой карты с проверкой на столкновения, для которых функция определена.
| Параметры значения |
|
|---|---|
| Возвращает | новую изменяемую карту с проверкой на столкновения, полученную путем применения заданной частичной функции |
Исходный код
| Классы определений | StrictOptimizedMapOps -> MapOps |
|---|
Исходный код
| Классы определений | MapOps |
|---|
Исходный код
override def empty: CollisionProofHashMap[K, V]
| Классы определений | MapFactoryDefaults -> IterableFactoryDefaults -> IterableOps |
|---|
Исходный код
def flatMap[K2, V2](f: (K, V) => IterableOnce[(K2, V2)])(implicit @implicitNotFound ordering: Ordering[K2]): CollisionProofHashMap[K2, V2]
Создает новую CollisionProofHashMap, применяя функцию ко всем элементам этой изменяемой карты с проверкой на столкновения и используя элементы полученных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает | новую изменяемую карту с проверкой на столкновения, полученную путем применения заданной функции, возвращающей коллекцию, |
Source
| Definition Classes | IterableOnceOps |
|---|
Source
override def foreachEntry[U](f: (K, V) => U): Unit
| Definition Classes | MapOps |
|---|
Source
Source
Source
override def getOrElse[V1 >: V](key: K, default: => V1): V1
| Definition Classes | MapOps |
|---|
Source
override def getOrElseUpdate(key: K, defaultValue: => V): V
| Definition Classes | MapOps |
|---|
Source
| Definition Classes | IterableOnceOps |
|---|
Source
| Definition Classes | IterableOnce |
|---|
Source
override def keysIterator: Iterator[K]
| Definition Classes | MapOps |
|---|
Source
| Definition Classes | MapOps -> Growable -> IterableOnce |
|---|
Source
def map[K2, V2](f: (K, V) => (K2, V2))(implicit @implicitNotFound ordering: Ordering[K2]): CollisionProofHashMap[K2, V2]
Создаёт новую CollisionProofHashMap, применяя функцию ко всем элементам этой изменяемой хэш-карты без коллизий.
| Value parameters |
|
|---|---|
| Returns | новая изменяемая хэш-карта без коллизий, полученная путём применения заданной функции |
Source
| Definition Classes | MapOps |
|---|
Source
| Definition Classes | MapOps |
|---|
Source
| Definition Classes | IterableOnceOps |
|---|
Source
| Definition Classes | Builder |
|---|
Source
def subtractOne(elem: K): CollisionProofHashMap[K, V]
Source
| Definition Classes | MapOps |
|---|
Inherited methods
Source@inline
Псевдоним для concat
| Inherited from | IterableOps |
|---|
Source@inline
Псевдоним для addAll
| Inherited from | Growable |
|---|
Source@inline
final def +=(elem: (K, V)): CollisionProofHashMap[K, V]
Псевдоним для addOne
| Inherited from | Growable |
|---|
Source@inline
Псевдоним для subtractAll
| Inherited from | Shrinkable |
|---|
Source@inline
final def -=(elem: K): CollisionProofHashMap[K, V]
Псевдоним для subtractOne
| Inherited from | Shrinkable |
|---|
Source@inline
Добавляет все элементы этой коллекции в строковый билдер. Записываемый текст состоит из строковых представлений (в соответствии с методом toString) всех элементов этой коллекции без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
| Параметры значения |
|
|---|---|
| Возвращает | строка-построитель |
| Унаследовано от | IterableOnceOps |
Источник@inline
Добавляет все элементы этого набора в строку-построитель, используя разделительную строку. Записанный текст состоит из строковых представлений (согласно методу toString) всех элементов этого набора, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
| Параметры значения |
|
|---|---|
| Возвращает | строка-построитель |
| Унаследовано от | IterableOnceOps |
Источник
| Классы-определения | MapOps -> IterableOnceOps |
|---|---|
| Унаследовано от | MapOps |
Источник
Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt на результирующей частичной функции может применить первую частичную функцию и выполнить её побочное действие. Для повышения эффективности рекомендуется вместо isDefinedAt или apply использовать applyOrElse.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
override def andThen[C](k: V => C): PartialFunction[K, C]
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип функции времени выполнения является PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, возможно, суженной указанной функцией, которая отображает аргументы |
| Классы-определения | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Источник
override def applyOrElse[K1 <: K, V1 >: V](x: K1, default: K1 => V1): V1
| Классы-определения | MapOps -> PartialFunction |
|---|---|
| Унаследовано от | MapOps |
Источник
| Унаследовано от | Map |
|---|
Источник
override def clone(): CollisionProofHashMap[K, V]
| Классы-определения | MapOps -> Cloneable -> Object |
|---|---|
| Унаследовано от | MapOps |
Источник
| Классы-определения | StrictOptimizedMapOps -> MapOps |
|---|---|
| Унаследовано от | StrictOptimizedMapOps |
Источник
| Классы-определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее результат применения pf к первому значению, для которого он определен, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Компонует другую частичную функцию k с этой частичной функцией таким образом, что эта частичная функция применяется к результатам k.
Обратите внимание, что вызов isDefinedAt на результирующей частичной функции может применить первую частичную функцию и выполнить её побочное действие. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения другой частичной функции, суженной этой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник@unspecialized
def compose[A](g: A => K): A => V
Компонует два экземпляра Function1 в новый Function1, с применением этой функции в последнюю очередь.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новую функцию |
| Унаследовано от | Function1 |
Исходный код
Возвращает новую итерируемую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов итерируемой коллекции — это наиболее специфический суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, которая содержит все элементы этой итерируемой коллекции, за которыми следуют все элементы |
| Унаследовано от | IterableOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs, начиная с индекса start, не более чем len элементами этой коллекции.
Копирование прекратится, когда будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода итератор, на котором он был вызван, следует отбросить. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs, начиная с индекса start, значениями этой коллекции.
Копирование прекратится, когда будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода итератор, на котором он был вызван, следует отбросить. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs, начиная с индекса start, значениями этой коллекции.
Копирование прекратится, когда будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода итератор, на котором он был вызван, следует отбросить. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код
Проверяет, соответствует ли каждый элемент итератора этой коллекции соответствующему элементу другой коллекции, удовлетворяя условию предиката.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Подсчитывает количество элементов в коллекции, удовлетворяющих предикату.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Исходный код@throws(scala.throws.$lessinit$greater$default$1[scala.NoSuchElementException])
def default(key: K): V
Определяет вычисление значения по умолчанию для карты, возвращаемое, когда ключ не найден. Реализованная здесь функция выбрасывает исключение, но может быть переопределена в подклассах.
| Параметры значения |
|
|---|---|
| Унаследовано от | MapOps |
Исходный код
| Унаследовано от | IterableOps |
|---|
Исходный код
Остальная часть коллекции без её n последних элементов. Для линейных неизменяемых коллекций это должно предотвращать создание копии.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
| Унаследовано от | IterableOps |
|---|
Source
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 |
Source
Равенство карт реализуется с помощью метода поиска get. Этот метод возвращает true, если
аргумент
oявляетсяMap,две карты имеют одинаковый размер size, и
для каждой
(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
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
Оставляет только те отображения, для которых предикат p возвращает true.
| Параметры значения |
|
|---|---|
| Унаследовано от | MapOps |
Source
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение Option, содержащее первый элемент в коллекции, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Source
| Классы определения | StrictOptimizedMapOps -> MapOps |
|---|---|
| Унаследовано от | StrictOptimizedMapOps |
Source
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
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 |
Источник
def foldRight[B](z: B)(op: ((K, V), B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, выполняется ли предикат для всех элементов этой коллекции.
Примечание: может не завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: Даже при применении к представлению или ленивой коллекции она всегда будет принуждать элементы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
Карту из ключей к итерируемым коллекциям, такая что выполняется следующее инвариантное свойство: (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 |
Источник
def init: CollisionProofHashMap[K, V]
Первая часть набора без последнего элемента.
Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно создавать элементы.
| Унаследовано от | IterableOps |
|---|
Источник
Итерируется по начальным частям этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее — пустым итерируемым набором, промежуточные значения — результат последовательных применений init.
Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно создавать элементы.
| Возвращает | итератор по всем инициализациям этого итерируемого набора |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
def isDefinedAt(key: K): Boolean
Проверяет, содержит ли эта карта привязку для ключа. Этот метод, реализующий абстрактный метод трейта PartialFunction, эквивалентен contains.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | MapOps |
Источник
override def isTraversableAgain: Boolean
| Классы определения | IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | IterableOps |
Источник
| Классы определения | Iterable -> Iterable -> IterableOps |
|---|---|
| Унаследовано от | Iterable |
Источник
Собирает все ключи этой карты в множестве.
| Возвращает | множество, содержащее все ключи этой карты. |
|---|---|
| Унаследовано от | MapOps |
Источник
Возвращает Stepper для ключей этой карты. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Источник
Собирает все ключи этой карты в итерируемом наборе.
| Возвращает | ключи этой карты в виде итерируемого объекта. |
|---|---|
| Унаследовано от | MapOps |
Источник
def last: (K, V)
Выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Возвращает | Последний элемент этого итерируемого набора. |
|---|---|
| Исключение |
|
| Унаследовано от | IterableOps |
Источник
def lastOption: Option[(K, V)]
Необязательно выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Возвращает | последний элемент этого итерируемого набора, если он не пустой, |
|---|---|
| Унаследовано от | 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 |
Источник
| Классы определения | StrictOptimizedMapOps -> MapOps |
|---|---|
| Унаследовано от | StrictOptimizedMapOps |
Источник
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
| Классы определения | Map -> Map -> MapOps |
|---|---|
| Унаследовано от | Map |
Источник
Бильдер, полученный из этого билдера путем применения отображения к результату с использованием f.
| Унаследовано от | Builder |
|---|
Источник
def mapValuesInPlace(f: (K, V) => V): CollisionProofHashMap[K, V]
Применяет функцию преобразования ко всем значениям, содержащимся в этой карте. Функция преобразования генерирует новые значения из существующих ключей, связанных со значениями.
| Параметры значения |
|
|---|---|
| Возвращает | сама карта. |
| Унаследовано от | MapOps |
Источник
Находит максимальный элемент.
Примечание: не завершится для бесконечных коллекций.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | наибольший элемент этого набора относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | первый элемент этого набора с наибольшим значением, измеренным функцией f относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опционального типа, содержащее первый элемент этого набора с наибольшим значением, измеренным функцией f относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Source
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опционального типа, содержащее наибольший элемент этого набора относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | наименьший элемент этого набора относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опционального типа, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опционального типа, содержащее наименьший элемент этого набора относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Source@inline
Отображает все элементы этого набора в строке.
Делегирует addString, который можно переопределить.
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с учётом метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Source@inline
Отображает все элементы этого набора в строке с использованием разделителя.
Делегирует addString, который можно переопределить.
| Параметры значений |
|
|---|---|
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с учётом метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этого набора в строке с использованием начальной, конечной и разделительной строк.
Делегирует вызов addString, который можно переопределить.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этого набора. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник@deprecatedOverriding("nonEmpty определено как !isEmpty; переопределите isEmpty вместо этого", "2.13.0")
Проверяет, не пуст ли набор.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Компонует эту частичную функцию с резервной частичной функцией, которая применяется там, где эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, у которой областью определения является объединение областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Источник
override def partition(p: (K, V) => Boolean): (CollisionProofHashMap[K, V], CollisionProofHashMap[K, V])
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Перемножает элементы этого набора.
Примечание: не завершит работу для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этого набора относительно оператора |
| Унаследовано от | 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]
Необязательно применяет бинарный оператор ко всем элементам этого набора, слева направо.
Примечание: не завершит работу для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
def reduceOption[B >: (K, V)](op: (B, B) => B): Option[B]
Редуцирует элементы этого набора, если они есть, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опции, содержащее результат применения оператора 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 |
Источник
def result(): CollisionProofHashMap[K, V]
| Унаследовано от | MapOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Компонует данную частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализуется с помощью applyOrElse и, следовательно, потенциально более эффективно. Использование runWith позволяет избежать двойного вычисления совпадений шаблонов и условий для литералов частичных функций.
| Параметры значения |
|
|---|---|
| Возвращает | функция, которая отображает аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Источник
Вычисляет префиксный сканирование элементов набора.
Примечание: нейтральный элемент z может применяться более одного раза.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий префиксное сканирование элементов в этом итерируемом наборе |
| Унаследовано от | IterableOps |
Источник
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Создает набор, содержащий кумулятивные результаты применения оператора справа налево. Головной элемент набора — последний кумулятивный результат.
Примечание: не будет завершаться для наборов бесконечной длины.
Примечание: может возвращать разные результаты для разных запусков, если только тип базового набора не упорядочен.
Примечание: даже при применении к представлению или ленивому набору он всегда будет принуждать элементы.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | набор с промежуточными результатами |
| Унаследовано от | IterableOps |
Источник
Сравнивает размер этого итерируемого набора с размером другого 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 |
Источник
Подсказка о том, что ожидается, что result этого сборщика будет иметь такой же размер, как у заданного набора, плюс некоторая добавка. Это предоставит подсказку только в том случае, если у набора известен размер. Некоторые классы сборщиков оптимизируют своё представление на основе подсказки. Однако реализации сборщиков по-прежнему должны работать правильно, даже если подсказка неверна, то есть добавляется другое количество элементов.
| Параметры значения |
|
|---|---|
| Унаследовано от | Builder |
Источник
Указывает, сколько элементов ожидается добавить при следующем вызове result, вместе с верхней границей, заданной размером некоторой другой коллекции. Некоторые классы-билдеры оптимизируют своё представление на основе подсказки. Однако реализации билдеров всё равно должны работать корректно, даже если подсказка неверна, т.е. добавлено другое количество элементов.
| Параметры значения |
|
|---|---|
| Унаследовано от | Builder |
Источник@inline
final def sizeIs: SizeCompareOps
Возвращает значение класса, содержащее операции для сравнения размера этой итерируемой коллекции со значением теста.
Эти операции реализованы с использованием sizeCompare(Int) и позволяют использовать следующие более удобочитаемые варианты:
this.sizeIs < size // this.sizeCompare(size) < 0 this.sizeIs <= size // this.sizeCompare(size) <= 0 this.sizeIs == size // this.sizeCompare(size) == 0 this.sizeIs != size // this.sizeCompare(size) != 0 this.sizeIs >= size // this.sizeCompare(size) >= 0 this.sizeIs > size // this.sizeCompare(size) > 0
| Унаследовано от | IterableOps |
|---|
Источник
| Унаследовано от | IterableOps |
|---|
Источник
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" по ним (в отличие от разбиения их, как это делается в grouped.)
Возвращаемый итератор будет пустым при вызове на пустой коллекции. Последний элемент, который итератор производит, может быть меньше размера окна, когда исходная коллекция не исчерпана окном до этого и её последний элемент не пропущен шагом перед ним.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые коллекции размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" по ним (в отличие от разбиения их, как это делается в grouped.)
Пустая коллекция возвращает пустой итератор, а непустая коллекция, содержащая меньше элементов, чем размер окна, возвращает итератор, который будет производить исходную коллекцию как свой единственный элемент.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые коллекции размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
| Классы-определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Источник
| Классы-определения | 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 |
|---|
Источник
Удаляет все элементы, производимые итератором, из этой сжимаемой коллекции.
| Параметры значения |
|
|---|---|
| Возвращает | сама сжимаемая коллекция |
| Унаследовано от | Shrinkable |
Источник
Суммирует элементы этой коллекции.
Примечание: не завершается для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумма всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Источник
def tail: CollisionProofHashMap[K, V]
Остальная часть коллекции без её первого элемента.
| Унаследовано от | IterableOps |
|---|
Исходный код
Итерирует по хвостам этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее — пустым итерируемым набором, а промежуточные значения — результаты последовательного применения tail.
| Возвращает | итератор по всем хвостам этого итерируемого набора |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
| Унаследовано от | IterableOps |
|---|
Исходный код
Коллекция, содержащая последние n элементы этой коллекции.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут форсироваться.
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Извлекает самую длинную префиксную часть элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры |
|
|---|---|
| Возвращает | самый длинный префикс этого итерируемого набора, элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Исходный код
override def tapEach[U](f: (K, V) => U): CollisionProofHashMap[K, V]
| Классы-предки | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Принимая во внимание фабрику коллекций factory, преобразует эту коллекцию в соответствующую форму для текущего типа элемента A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
Преобразование коллекции в массив.
Примечание к реализации: НЕ вызывайте Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Исходный код@inline
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
def toIndexedSeq: IndexedSeq[(K, V)]
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
def toSeq: Последовательность[(K, V)]
| Возвращает | Эта коллекция как |
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Классы-предки | Карта -> Функция1 -> Итерируемый набор -> Любой |
|---|---|
| Унаследовано от | Карта |
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
def transpose[B](implicit asIterable: (K, V) => Итерируемый набор[B]): Итерируемый набор[Итерируемый набор[B]]
Транспонирует этот итерируемый набор итерируемых наборов в итерируемый набор итерируемых наборов.
Тип результирующей коллекции будет зависеть от статического типа итерируемой коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут форсироваться.
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | двумерный итерируемый набор итерируемых наборов, в котором n-я строка представляет n-й столбец этого итерируемого набора. |
| Исключения |
|
| Унаследовано от | IterableOps |
Исходный код
Пытается извлечь B из A в выражении сопоставления с образцом.
| Унаследовано от | PartialFunction |
|---|
Источник
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследованно от | StrictOptimizedIterableOps |
Источник
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследованно от | StrictOptimizedIterableOps |
Источник
Обновляет отображение для указанного ключа и его текущего необязательного сопоставленного значения (Some, если есть текущее сопоставление, None, если нет).
Если функция переназначения возвращает Some(v), отображение обновляется с новым значением v. Если функция переназначения возвращает None, отображение удаляется (или остается отсутствующим, если изначально отсутствовало). Если сама функция вызывает исключение, исключение перебрасывается, а текущее отображение остается без изменений.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новое значение, связанное с указанным ключом |
| Унаследованно от | MapOps |
Источник
Возвращает Stepper для значений данной карты. См. метод stepper.
| Унаследованно от | MapOps |
|---|
Источник
Собирает все значения этой карты в итерируемую коллекцию.
| Возвращаемое значение | значения этой карты в виде итерируемого объекта. |
|---|---|
| Унаследованно от | MapOps |
Источник
def valuesIterator: Iterator[V]
Создает итератор для всех значений в этой карте.
| Возвращаемое значение | итератор по всем значениям, которые связаны с каким-либо ключом в этой карте. |
|---|---|
| Унаследованно от | MapOps |
Источник
| Классы определений | MapOps -> IterableOps |
|---|---|
| Унаследованно от | MapOps |
Источник
def withDefault(d: K => V): Map[K, V]
Та же карта с заданной функцией по умолчанию. Примечание: значение по умолчанию используется только для apply. Другие методы, такие как get, contains, iterator, keys и т. д., не затронуты withDefaultValue.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | обертка карты со значением по умолчанию |
| Унаследованно от | Map |
Источник
def withDefaultValue(d: V): Map[K, V]
Та же карта с заданным значением по умолчанию. Примечание: значение по умолчанию используется только для apply. Другие методы, такие как get, contains, iterator, keys и т. д., не затронуты withDefaultValue.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | обертка карты со значением по умолчанию |
| Унаследованно от | Map |
Источник
| Классы определений | MapFactoryDefaults -> IterableOps |
|---|---|
| Унаследованно от | MapFactoryDefaults |
Источник
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследованно от | StrictOptimizedIterableOps |
Источник
Возвращает итерируемую коллекцию, образованную из этой итерируемой коллекции и другой итерируемой коллекции, объединяя соответствующие элементы в пары. Если одна из двух коллекций короче другой, элементы-заполнители используются для расширения более короткой коллекции до длины более длинной.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новая коллекция типа |
| Унаследованно от | IterableOps |
Источник
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
|---|---|
| Унаследованно от | StrictOptimizedIterableOps |
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/collection/mutable/CollisionProofHashMap.html