Класс scala.collection.mutable.AnyRefMap
Компаньон объект AnyRefMap
final класс AnyRefMap[K <: AnyRef, V] extends AbstractMap[K, V] с Map[K, V] с MapLike[K, V, AnyRefMap[K, V]] с Serializable
Конструкторы экземпляров
новый AnyRefMap(defaultEntry: (K) ⇒ V, initialBufferSize: Int)
новый AnyRefMap(initialBufferSize: Int)
Создает новую AnyRefMap с начальным буфером указанного размера.
AnyRefMap обычно может содержать вдвое меньше элементов, чем размер ее буфера, прежде чем потребуется изменение размера.
новый AnyRefMap(defaultEntry: (K) ⇒ V)
новый AnyRefMap()
Типы-члены
класс DefaultKeySet extends AbstractSet[K] с Set[K] с Serializable
Реализующий класс множества, возвращаемого методом keySet.
- Атрибуты
- protected
- Определяющие классы
- MapLike
класс DefaultValuesIterable extends AbstractIterable[V] с Iterable[V] с Serializable
Реализующий класс итерируемого объекта, возвращаемого методом values.
- Атрибуты
- protected
- Определяющие классы
- MapLike
класс FilteredKeys extends AbstractMap[K, V] с DefaultMap[K, V]
- Атрибуты
- protected
- Определяющие классы
- MapLike
класс MappedValues[W] extends AbstractMap[K, W] с DefaultMap[K, W]
- Атрибуты
- protected
- Определяющие классы
- MapLike
класс WithFilter extends FilterMonadic[A, Repr]
Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.
- Определяющие классы
- TraversableLike
тип Self = AnyRefMap[K, V]
Тип, реализующий этот итерируемый объект
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableLike
Члены-значения
final def !=(arg0: Any): Boolean
Тестирование двух объектов на неравенство.
- returns
trueесли !(this == that), иначе false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для числовых типов возвращает значение хеша, согласованное с равенством по значению: если два экземпляра типа значения сравниваются как true, то ## для каждого из них вернёт одинаковое значение хеша. Для null возвращает код хеша, где null.hashCode выбрасывает NullPointerException.
- returns
значение хеша, согласованное с ==
- Definition Classes
- AnyRef → Any
def +[V1 >: V](kv: (K, V1)): AnyRefMap[K, V1]
Создаёт новый map, содержащий новую пару ключ/значение и все пары ключ/значение из этого map.
Сопоставление kv перезапишет существующие сопоставления из этого map с тем же ключом.
- V1
тип значения в паре ключ/значение.
- kv
пара ключ/значение, которая должна быть добавлена
- returns
новый map, содержащий сопоставления из этого map и сопоставление
kv.
- Definition Classes
- AnyRefMap → MapLike → MapLike → GenMapLike
def +[V1 >: V](elem1: (K, V1), elem2: (K, V1), elems: (K, V1)*): Map[K, V1]
Создаёт новый map, содержащий две или более пары ключ/значение и все пары ключ/значение из этого map.
Указанные сопоставления перезапишут существующие сопоставления из этого map с теми же ключами.
- V1
тип добавляемых значений
- elem1
первый добавляемый элемент.
- elem2
второй добавляемый элемент.
- elems
оставшиеся добавляемые элементы.
- returns
новый map, содержащий сопоставления из этого map и двух или более указанных сопоставлений.
def ++[V1 >: V](xs: GenTraversableOnce[(K, V1)]): AnyRefMap[K, V1]
Создаёт новый map, содержащий пары ключ/значение, предоставленные указанным объектом перебираемой коллекции, и все пары ключ/значение из этого map.
Обратите внимание, что существующие сопоставления из этого map с тем же ключом, что и в xs, будут перезаписаны.
- V1
тип добавляемых значений
- xs
объект перебираемой коллекции.
- returns
новый map, содержащий сопоставления из этого map и те, которые предоставлены
xs.
def ++[B >: (K, V), That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[AnyRefMap[K, V], B, That]): That
Возвращает новую коллекцию перебираемых элементов, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента коллекции перебираемых элементов — это наиболее специфический суперкласс, охватывающий типы элементов двух операндов.
- B
тип элемента возвращаемой коллекции.
- That
класс возвращаемой коллекции. Где это возможно,
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, допускается ли тип элементаBдля этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
перебираемая коллекция для добавления.
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatпо типу представления текущей коллекцииReprи новому типу элементаB.- returns
новая коллекция типа
That, которая содержит все элементы этой коллекции перебираемых элементов, за которыми следуют все элементыthat.
- Definition Classes
- TraversableLike → GenTraversableLike
def ++:[B >: (K, V), That](that: collection.Traversable[B])(implicit bf: CanBuildFrom[AnyRefMap[K, V], B, That]): That
Как и ++, возвращает новую коллекцию, содержащую элементы из левого операнда, после которых следуют элементы из правого операнда.
Она отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоника: двоеточие стоит со стороны нового типа коллекции.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
Этот перегруз существует, потому что: для реализации ++: мы должны переиспользовать реализацию ++, так как многие коллекции переопределяют её более эффективными версиями.
Поскольку у TraversableOnce нет метода ++, мы должны реализовать его напрямую, но Traversable и ниже могут использовать перегруз.
- B
тип элементов возвращаемой коллекции.
- That
класс возвращаемой коллекции. Где возможно,
That— это тот же класс, что и текущий класс коллекцииRepr, но это зависит от типа элементовBдопустимого для этого класса, что означает, что найдено неявное значение типаCanBuildFrom[Repr, B, That].- that
коллекция, которую нужно добавить.
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементовB.- returns
новая коллекция типа
That, которая содержит все элементы этой коллекции, после которых следуют все элементыthat.
- Definition Classes
- TraversableLike
def ++:[B](that: TraversableOnce[B]): Map[B]
Как и ++, возвращает новую коллекцию, содержащую элементы из левого операнда, после которых следуют элементы из правого операнда.
Она отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоника: двоеточие стоит со стороны нового типа коллекции.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
- B
тип элементов возвращаемой коллекции.
- that
коллекция, которую нужно добавить.
- returns
новая изменяемая карта, которая содержит все элементы этой изменяемой карты, после которых следуют все элементы
that.
- Definition Classes
- TraversableLike
def ++=(xs: TraversableOnce[(K, V)]): AnyRefMap.this.type
Добавляет все элементы, полученные из TraversableOnce, в эту изменяемую коллекцию.
- xs
TraversableOnce, генерирующая элементы для добавления.
- returns
сама изменяемая коллекция.
- Definition Classes
- Growable
def +=(kv: (K, V)): AnyRefMap.this.type
Добавляет новую пару ключ/значение в эту карту. Если карта уже содержит отображение для ключа, оно будет перезаписано новым значением.
- kv
пара ключ/значение.
- returns
сама карта
def +=(key: K, value: V): AnyRefMap.this.type
def +=(elem1: (K, V), elem2: (K, V), elems: (K, V)*): AnyRefMap.this.type
Добавляет два или более элементов в эту изменяемую коллекцию.
- elem1
первый добавляемый элемент.
- elem2
второй добавляемый элемент.
- elems
остальные добавляемые элементы.
- returns
сама изменяемая коллекция
- Definition Classes
- Growable
def -(elem1: K, elem2: K, elems: K*): AnyRefMap[K, V]
Создает новую карту со всеми парами ключ/значение из этой карты, за исключением пар с ключами, равными любому из двух или более указанных ключей.
- elem1
первый элемент для удаления.
- elem2
второй элемент для удаления.
- elems
оставшиеся элементы для удаления.
- returns
новая карта, содержащая все сопоставления из этой карты, за исключением сопоставлений с ключом, равным
elem1,elem2или любому изelems.
- Definition Classes
- MapLike → Subtractable
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
-создает новую карту. Используйте-=для удаления элемента из этой карты и возврата самой этой карты.
def -(key: K): AnyRefMap[K, V]
Создает новую карту со всеми парами ключ/значение из этой карты, за исключением пары ключ/значение с указанным ключом.
- key
ключ для удаления
- returns
новая карта со всеми сопоставлениями из этой карты, за исключением того, у которого ключ
key.
- Definition Classes
- MapLike → MapLike → Subtractable → GenMapLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
-создает новую карту. Используйте-=для удаления элемента из этой карты и возврата самой этой карты.
def --(xs: GenTraversableOnce[K]): AnyRefMap[K, V]
Создает новую карту со всеми парами ключ/значение из этой карты, за исключением пар с ключами, равными любому из ключей, предоставляемых указанным объектом перебора.
- xs
объект перебора.
- returns
новая карта со всеми парами ключ/значение из этой карты, за исключением пар с ключом, равным ключу из
xs.
- Definition Classes
- MapLike → Subtractable
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
--создает новую карту. Используйте--=для удаления элемента из этой карты и возврата самой этой карты.
def --=(xs: TraversableOnce[K]): AnyRefMap.this.type
Удаляет все элементы, создаваемые итератором, из этого сжимаемого набора.
- xs
итератор, создающий элементы для удаления.
- returns
сам сжимаемый набор
- Definition Classes
- Shrinkable
def -=(key: K): AnyRefMap.this.type
Удаляет ключ из этой карты.
- key
ключ для удаления
- returns
сама карта.
- Definition Classes
- AnyRefMap → MapLike → Shrinkable
def -=(elem1: K, elem2: K, elems: K*): AnyRefMap.this.type
Удаляет два или более элементов из этого сжимаемого набора.
- elem1
первый элемент для удаления.
- elem2
второй элемент для удаления.
- elems
оставшиеся элементы для удаления.
- returns
сам сжимаемый набор
- Definition Classes
- Shrinkable
def ->[B](y: B): (AnyRefMap[K, V], B)
- Implicit
- Этот член добавлен неявным преобразованием из AnyRefMap[K, V] в ArrowAssoc[AnyRefMap[K, V]] с помощью метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
def /:[B](z: B)(op: (B, (K, V)) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого итерируемого объекта или итератора слева направо.
Примечание: /: — это альтернативная запись для foldLeft; z /: xs эквивалентно xs foldLeft z.
Примеры:
Обратите внимание, что функция свёртки, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_) b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y) c: Int = 15
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора слева направо с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn— элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def :\[B](z: B)(op: ((K, V), B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора и начальному значению, двигаясь справа налево.
Примечание: :\ — это альтернативная запись для foldRight; xs :\ z эквивалентно xs foldRight z.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
Примеры:
Обратите внимание, что функция свёртки, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_) b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y) c: Int = 15
- B
тип результата бинарного оператора.
- z
начальное значение
- op
бинарный оператор
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- returns
true, если объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def addString(b: scala.StringBuilder, start: String, sep: String, end: String): scala.StringBuilder
Добавляет все связи этой карты в строковый билдер, используя строки start, end и separator. Текст начинается со строки start и заканчивается строкой end. Между строковыми представлениями всех связей этой карты, в формате key -> value, вставляется строка sep.
- b
билдер, в который добавляются строки.
- start
стартовая строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковый билдер
b, в который были добавлены элементы.
- Definition Classes
- MapLike → TraversableOnce
def addString(b: scala.StringBuilder): scala.StringBuilder
Добавляет все элементы этого итерируемого объекта или итератора в строковый билдер. Записанный текст состоит из строковых представлений (в соответствии с методом toString) всех элементов этого итерируемого объекта или итератора без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
- b
строковый билдер, в который добавляются элементы.
- returns
строковый билдер
b, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
def addString(b: scala.StringBuilder, sep: String): scala.StringBuilder
Добавляет все элементы этого итерируемого объекта или итератора в строковый билдер, используя разделительную строку. Записанный текст состоит из строковых представлений (в соответствии с методом toString) всех элементов этого итерируемого объекта или итератора, разделённых строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
- b
строковый билдер, в который добавляются элементы.
- sep
разделительная строка.
- returns
строковый билдер
b, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
def aggregate[B](z: ⇒ B)(seqop: (B, (K, V)) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общий вид fold и reduce. Он похож на foldLeft тем, что не требует, чтобы результат был супертипом типа элемента. Кроме того, он позволяет обрабатывать параллельные коллекции частями и затем комбинировать промежуточные результаты.
aggregate разбивает перебираемый объект или итератор на разделы и обрабатывает каждый раздел, последовательно применяя seqop, начиная с z (как foldLeft). Затем эти промежуточные результаты объединяются с помощью combop (как fold). Реализация этой операции может работать с произвольным числом разделов коллекции (даже с 1), поэтому combop может вызываться произвольное число раз (даже 0).
В качестве примера рассмотрим суммирование целочисленных значений списка символов. Начальное значение для суммы равно 0. Сначала seqop преобразует каждый входной символ в целое число и добавляет его к сумме (раздела). Затем combop просто суммирует промежуточные результаты разделов:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип накапливаемых результатов
- z
начальное значение для накопленного результата раздела — это обычно нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования) и может быть вычислен более одного раза- seqop
оператор, используемый для накопления результатов внутри раздела
- combop
ассоциативный оператор, используемый для объединения результатов из разных разделов
- Definition Classes
- TraversableOnce → GenTraversableOnce
def andThen[C](k: (V) ⇒ C): PartialFunction[K, C]
Компонует данную частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
- C
тип результата функции преобразования.
- k
функция преобразования
- returns
частичная функция с тем же доменом, что и эта частичная функция, которая сопоставляет аргументы
xсо значениемk(this(x)).
- Definition Classes
- PartialFunction → Function1
def apply(key: K): V
Возвращает значение, связанное с ключом. Если ключ отсутствует в карте, возвращается defaultEntry для этого ключа; исключение будет выброшено, если defaultEntry не указан.
- key
ключ
- returns
значение, связанное с заданным ключом, или результат метода
defaultкарты, если он отсутствует.
- Definition Classes
- AnyRefMap → MapLike → Function1 → GenMapLike
def applyOrElse[K1 <: K, V1 >: V](x: K1, default: (K1) ⇒ V1): V1
Применяет данную частичную функцию к заданному аргументу, когда он содержится в области определения функции. Применяет функцию обратного вызова, где эта частичная функция не определена.
Обратите внимание, что выражение pf.applyOrElse(x, default) эквивалентно
if(pf isDefinedAt x) pf(x) else default(x)
за исключением того, что метод applyOrElse может быть реализован более эффективно. Для всех частичных функций-литералов компилятор генерирует реализацию applyOrElse, которая избегает двойной оценки проверяющих выражений и условий. Это делает applyOrElse основой для эффективной реализации во многих операциях и сценариях, таких как:
-
комбинирование частичных функций в цепочки
orElse/andThen не приводит к чрезмерной оценке apply/isDefinedAt
lift и unlift не вычисляют исходные функции дважды при каждом вызове
runWith позволяет эффективно комбинировать частичные функции с условными действиями Для классов частичных функций, не являющихся литералами, с ненулевым методом isDefinedAt рекомендуется переопределить метод applyOrElse с настраиваемой реализацией, которая избегает двойной оценки isDefinedAt. Это может привести к лучшей производительности и более предсказуемому поведению с точки зрения побочных эффектов.
- x
аргумент функции
- default
функция обратного вызова
- returns
результат применения этой функции или функции обратного вызова.
- Definition Classes
- MapLike → PartialFunction
- Since
2.10
final def asInstanceOf[T0]: T0
Преобразует текущий объект в тип T0.
Обратите внимание, что успех преобразования во время выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] выбросит исключение ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] — нет. В последнем примере, так как тип аргумента стирается при компиляции, невозможно проверить, содержат ли элементы списка необходимый тип.
- returns
текущий объект.
- Definition Classes
- Any
- Исключения
ClassCastExceptionесли текущий объект не является экземпляром стираемого типаT0.
def canEqual(that: Any): Boolean
Метод, вызываемый методами сравнения на равенство, чтобы дочерние классы с пользовательскими определениями могли отказаться от сравнения с другими коллекциями того же типа.
- that
объект, с которым должна быть сравнена эта итерируемая коллекция
- returns
true, если эта итерируемая коллекция может потенциально быть равнойthat,falseв противном случае. Тест учитывает только типы объектов во время выполнения, но игнорирует их элементы.
- Definition Classes
- IterableLike → Equals
def clear(): Unit
def clone(): AnyRefMap[K, V]
Создайте копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия объекта-получателя.
def collect[B](pf: PartialFunction[A, B]): Map[B]
Создает новую коллекцию, применяя частичную функцию ко всем элементам этой изменяемой карты, для которых функция определена.
- B
тип элементов возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и отображает изменяемую карту.
- returns
новая изменяемая карта, полученная в результате применения заданной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def collectFirst[B](pf: PartialFunction[(K, V), B]): Option[B]
Ищет первый элемент перебираемого объекта или итератора, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- pf
частичная функция
- returns
значение типа Option, содержащее результат применения pf к первому значению, для которого оно определено, или
Noneесли такого значения не существует.
- Definition Classes
- TraversableOnce
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def companion: GenericCompanion[Iterable]
Объект-компаньон-фабрика, который создаёт экземпляры класса Iterable. (или его Iterable суперкласса, где класс Iterable не является Seq.)
- Definition Classes
- Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → GenericTraversableTemplate
def compose[A](g: (A) ⇒ K): (A) ⇒ V
Компонует два экземпляра Function1 в новый Function1, при этом эта функция применяется последней.
- A
тип, к которому функция
gможет быть применена- g
функция A => T1
- returns
новая функция
fтакая, чтоf(x) == apply(g(x))
- Definition Classes
- Function1
- Annotations
- @unspecialized()
def contains(key: K): Boolean
Проверяет, содержит ли эта карта привязку для ключа.
- key
ключ
- returns
true, если есть привязка для
keyв этой карте, false в противном случае.
- Definition Classes
- AnyRefMap → MapLike → GenMapLike
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этой изменяемой карты в массив. Заполняет заданный массив xs не более чем len элементами этой изменяемой карты, начиная с позиции start. Копирование прекращается, как только достигнут конец текущей изменяемой карты, или конец целевого массива, или len элементов были скопированы.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество элементов для копирования.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A]): Unit
Копирует элементы этой изменяемой карты в массив. Заполняет заданный массив xs значениями этой изменяемой карты. Копирование прекращается, как только достигается конец текущей изменяемой карты или конец целевого массива.
- xs
массив для заполнения.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этой изменяемой карты в массив. Заполняет заданный массив xs значениями этой изменяемой карты, начиная с индекса start. Копирование прекращается, как только достигается конец текущей изменяемой карты или конец целевого массива.
- xs
массив для заполнения.
- start
начальный индекс.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: (K, V)](dest: Buffer[B]): Unit
Копирует все элементы этого перебираемого объекта или итератора в буфер.
Примечание: не будет завершаться для коллекций бесконечного размера.
- dest
Буфер, в который копируются элементы.
- Definition Classes
- TraversableOnce
def count(p: ((K, V)) ⇒ Boolean): Int
Подсчитывает количество элементов в перебираемом объекте или итераторе, удовлетворяющих предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def default(key: K): V
Обращается к defaultEntry, чтобы найти значение по умолчанию для ключа. Выбрасывает исключение, если не было указано иного поведения по умолчанию.
- key
значение заданного ключа, для которого отсутствует привязка.
- Definition Classes
- AnyRefMap → MapLike → GenMapLike
def drop(n: Int): AnyRefMap[K, V]
Выбирает все элементы, кроме первых n элементов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов для удаления из этой итерируемой коллекции.
- returns
итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме первых
nэлементов, или же пустая итерируемая коллекция, если в этой итерируемой коллекции меньше чемnэлементов. Еслиnотрицательное, не удалять никаких элементов.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def dropRight(n: Int): AnyRefMap[K, V]
Выбирает все элементы, кроме последних n элементов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
Количество элементов, которые нужно выбрать
- returns
итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме последних
nэлементов, или же пустая итерируемая коллекция, если в этой итерируемой коллекции меньше чемnэлементов.
- Definition Classes
- IterableLike
def dropWhile(p: ((K, V)) ⇒ Boolean): AnyRefMap[K, V]
Удаляет самую длинную префиксную часть элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
самое длинное суффиксное подмножество этой перебираемой коллекции, первый элемент которого не удовлетворяет предикату
p.
- Definition Classes
- TraversableLike → GenTraversableLike
def empty: AnyRefMap[K, V]
def ensuring(cond: (AnyRefMap[K, V]) ⇒ Boolean, msg: ⇒ Any): AnyRefMap[K, V]
- Implicit
- Этот член добавляется неявным преобразованием из AnyRefMap[K, V] в Ensuring[AnyRefMap[K, V]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (AnyRefMap[K, V]) ⇒ Boolean): AnyRefMap[K, V]
- Implicit
- Этот член добавляется неявным преобразованием из AnyRefMap[K, V] в Ensuring[AnyRefMap[K, V]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): AnyRefMap[K, V]
- Implicit
- Этот член добавляется неявным преобразованием из AnyRefMap[K, V] в Ensuring[AnyRefMap[K, V]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): AnyRefMap[K, V]
- Implicit
- Этот член добавляется неявным преобразованием из AnyRefMap[K, V] в Ensuring[AnyRefMap[K, V]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на непустых экземплярах AnyRef, и обладает тремя дополнительными свойствами:
-
Он согласован: для любых непустых экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого непустого экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true. При переопределении методов equals или hashCode важно гарантировать, что их поведение согласуется с равенством по ссылке. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковый хеш-код (o1.hashCode == o2.hashCode).
- returns
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def equals(that: Any): Boolean
Структурно сравнивает два отображения; т.е. проверяет, содержатся ли все отображения, содержащиеся в данном отображении, также и в другом отображении, и наоборот.
- that
другое отображение
- returns
trueесли оба отображения содержат ровно одинаковые отображения,falseв противном случае.
- Definition Classes
- GenMapLike → Equals → AnyRef → Any
def exists(p: ((K, V)) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для хотя бы одного элемента в этом итерируемом наборе.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
falseесли этот итерируемый набор пуст, в противном случаеtrueесли данный предикатpвыполняется для некоторых элементов этого итерируемого набора, в противном случаеfalse
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def filter(p: ((K, V)) ⇒ Boolean): AnyRefMap[K, V]
Выбирает все элементы этой коллекции, удовлетворяющие предикату.
- p
предикат для проверки элементов.
- returns
новая коллекция, состоящая из всех элементов этой коллекции, удовлетворяющих заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def filterKeys(p: (K) ⇒ Boolean): collection.Map[K, V]
Фильтрация этой карты, оставляя только ключи, удовлетворяющие предикату.
Примечание: предикат должен принимать любой ключ типа K, а не только те, которые уже присутствуют в карте, так как предикат проверяется до запроса к основной карте.
- p
предикат для проверки ключей
- returns
неизменяемая карта, содержащая только те пары ключ-значение из этой карты, где ключ удовлетворяет предикату
p. Результирующая карта оборачивает исходную карту без копирования каких-либо элементов.
- Definition Classes
- MapLike → GenMapLike
def filterNot(p: ((K, V)) ⇒ Boolean): AnyRefMap[K, V]
Возвращает новую карту, из которой удалены все пары ключ/значение, для которых предикат p возвращает true.
Примечание: Этот метод работает, последовательно удаляя элементы, для которых предикат истинен из этого множества. Если удаление медленное, или вы ожидаете, что большинство элементов множества будут удалены, вы можете рассмотреть использование filter с отрицаемым предикатом вместо этого.
- p
Предикат для пар ключ-значение
- returns
Новая карта, содержащая элементы, не удовлетворяющие предикату.
- Definition Classes
- MapLike → TraversableLike → GenTraversableLike
def finalize(): Unit
Вызывается сборщиком мусора на объекте-получателе, когда больше нет ссылок на объект.
Подробности о том, когда и будет ли вызываться метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- Note
не указано в SLS как член AnyRef
def find(p: ((K, V)) ⇒ Boolean): Option[(K, V)]
Находит первый элемент в итерируемой коллекции, удовлетворяющий предикату, если такой существует.
Примечание: может не завершиться для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- p
предикат для проверки элементов.
- returns
значение Option, содержащее первый элемент в итерируемой коллекции, удовлетворяющий
p, илиNoneесли таковой не существует.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Map[B]
Создает новую коллекцию, применяя функцию ко всем элементам этой изменяемой карты и используя элементы полученных коллекций.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип результирующей коллекции определяется статическим типом изменяемой карты. Это может иногда приводить к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap (word => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новая изменяемая карта, полученная путем применения заданной функции, возвращающей коллекцию
fк каждому элементу этой изменяемой карты и конкатенации результатов.
- Definition Classes
- TraversableLike → GenTraversableLike → FilterMonadic
def flatten[B]: Map[B]
Преобразует эту изменяемую карту из коллекций в изменяемую карту, образованную элементами этих коллекций.
Тип результирующей коллекции будет определяться статическим типом изменяемой карты. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
- B
тип элементов каждой коллекции.
- returns
новая изменяемая карта, полученная путем конкатенации всех изменяемых карт элементов.
- Definition Classes
- GenericTraversableTemplate
def fold[A1 >: (K, V)](z: A1)(op: (A1, A1) ⇒ A1): A1
Складывает элементы этого итерируемого объекта с помощью указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не завершится для бесконечных коллекций.
- A1
тип параметр для бинарного оператора, надтип
A.- z
нейтральный элемент для операции fold; может быть добавлен к результату произвольное число раз, и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора fold
opмежду всеми элементами иz, илиzесли этот итерируемый объект пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def foldLeft[B](z: B)(op: (B, (K, V)) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого итерируемого объекта слева направо.
Примечание: не завершится для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта слева направо с начальным значениемzслева:op(...op(z, x_1), x_2, ..., x_n)
где
x1, ..., xnявляются элементами этого итерируемого объекта. Возвращаетzесли этот итерируемый объект пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def foldRight[B](z: B)(op: ((K, V), B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению справа налево.
Примечание: не завершится для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn- это элементы этой коллекции. Возвращаетzесли эта коллекция пуста.
- Definition Classes
- IterableLike → TraversableOnce → GenTraversableOnce
def forall(p: ((K, V)) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этой коллекции.
Примечание: может не завершиться для бесконечных коллекций.
- p
предикат, используемый для проверки элементов.
- returns
trueесли эта коллекция пуста или данный предикатpвыполняется для всех элементов этой коллекции, иначеfalse.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def foreach(f: (A) ⇒ Unit): Unit
Применяет функцию f ко всем элементам этой изменяемой карты.
Примечание: этот метод лежит в основе реализации большинства других массовых операций. Подклассы должны переопределять этот метод, если существует более эффективная реализация.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fигнорируется.
- Definition Classes
- AnyRefMap → IterableLike → GenericTraversableTemplate → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
def foreachKey[A](f: (K) ⇒ A): Unit
def foreachValue[A](f: (V) ⇒ A): Unit
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой format. Форматные строки аналогичны String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавляется неявным преобразованием из AnyRefMap[K, V] в StringFormat[AnyRefMap[K, V]], выполненное методом StringFormat в scala.Predef.
- Определяющие классы
- StringFormat
- Аннотации
- @inline()
def genericBuilder[B]: Builder[B, Iterable[B]]
Обобщённый билдер, который создаёт экземпляры Traversable для произвольных типов элементов.
- Определяющие классы
- GenericTraversableTemplate
def get(key: K): Option[V]
Возвращает значение, ассоциированное с ключом.
- key
значение ключа
- возвращает
опциональное значение, содержащее значение, связанное с
keyв этой карте, илиNone, если такого значения нет.
- Определяющие классы
- AnyRefMap → MapLike → GenMapLike
final def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- возвращает
объект класса, соответствующий типу получателя во время выполнения.
def getOrElse(key: K, default: ⇒ V): V
Возвращает значение, ассоциированное с ключом, или значение по умолчанию, если ключ не содержится в карте.
- key
ключ.
- default
вычисление, которое возвращает значение по умолчанию в случае, если для
keyнет привязки в карте.- возвращает
значение, связанное с
key, если оно существует, в противном случае результат вычисленияdefault.
- Определяющие классы
- AnyRefMap → MapLike → GenMapLike
def getOrElseUpdate(key: K, defaultValue: ⇒ V): V
Если заданный ключ уже есть в этой карте, возвращает ассоциированное значение.
В противном случае вычисляет значение из данного выражения op, сохраняет его в карте с ключом и возвращает это значение.
Реализации конкуретных карт могут вычислять выражение op несколько раз или могут вычислить op без вставки результата.
- key
ключ для проверки
- возвращает
значение, ассоциированное с ключом (ранее или как результат выполнения метода).
def getOrNull(key: K): V
Возвращает значение, ассоциированное с ключом, или значение по умолчанию для этого типа, если оно не существует (null для AnyRef, 0 для чисел с плавающей запятой и целых чисел).
Примечание: это самый быстрый способ получения значения, которое может или может не существовать, если допустимо значение по умолчанию null/ноль. Для пар ключ/значение, которые существуют, apply (т.е. map(key)) также быстро.
def groupBy[K](f: ((K, V)) ⇒ K): immutable.Map[K, AnyRefMap[K, V]]
Разделяет эту коллекцию на карту коллекций с помощью функции дискриминатора.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда принудительно вычисляет представление и возвращает новую коллекцию.
- K
тип ключей, возвращаемых функцией дискриминатора.
- f
функция дискриминатора.
- возвращает
-
Карту из ключей к коллекциям, которая удовлетворяет следующему инварианту:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kсвязан с коллекцией тех элементовx, для которыхf(x)равноk.
- Определяющие классы
- TraversableLike → GenTraversableLike
def grouped(size: Int): Iterator[AnyRefMap[K, V]]
Разделяет элементы на итерируемые коллекции фиксированного размера.
- размер
количество элементов в группе
- возвращает
Итератор, генерирующий итерируемые коллекции размера
size, за исключением последней, которая будет меньше размераsize, если элементы не делятся на размер без остатка.
- Определяющие классы
- IterableLike
- См. также
scala.collection.Iterator, метод
grouped
def hasDefiniteSize: Boolean
Проверяет, известен ли конечный размер этого итерируемого набора. Все строгие коллекции имеют известный конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true, если все элементы были вычислены. Он возвращает false, если поток еще не был просчитан до конца. Непустые итераторы обычно возвращают false, даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечного размера. Типичный режим отказа — бесконечный цикл. Эти методы всегда пытаются выполнить итерацию, не проверяя сначала, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер определен и бесконечная работа не является проблемой.
- возвращает
true, если размер этой коллекции известен как конечный,falseв противном случае.
- Определяющие классы
- TraversableLike → TraversableOnce → GenTraversableOnce
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- возвращает
значение хэш-кода для этого объекта.
- Определяющие классы
- GenMapLike → AnyRef → Any
def head: (K, V)
Выбирает первый элемент этой итерируемой коллекции.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- возвращает
первый элемент этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableLike → GenTraversableLike
- Исключения
NoSuchElementException, если итерируемая коллекция пустая.
def headOption: Option[(K, V)]
Выбирает первый элемент опционально.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- возвращает
первый элемент этой итерируемой коллекции, если она непустая,
Noneесли она пустая.
- Определяющие классы
- TraversableLike → GenTraversableLike
def init: AnyRefMap[K, V]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- возвращает
итерируемую коллекцию, состоящую из всех элементов этой итерируемой коллекции, кроме последнего.
- Определяющие классы
- TraversableLike → GenTraversableLike
- Исключения
UnsupportedOperationExceptionесли итерируемая коллекция пуста.
def inits: Iterator[AnyRefMap[K, V]]
Итерируется по начальным фрагментам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений init.
- возвращает
итератор по всем начальным фрагментам этой итерируемой коллекции
- Определяющие классы
- TraversableLike
List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)
def isDefinedAt(key: K): Boolean
Проверяет, содержит ли эта карта привязку для ключа. Этот метод, реализующий абстрактный метод тракта PartialFunction, эквивалентен contains.
- ключ
ключ
- возвращает
true, если дляkeyесть привязка в этой карте,falseв противном случае.
- Определяющие классы
- MapLike → GenMapLike → PartialFunction
def isEmpty: Boolean
Проверяет, пуста ли карта.
- возвращает
true, если карта не содержит никаких пар ключ/значение,falseв противном случае.
- Определяющие классы
- MapLike → IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип объекта-получателя T0.
Обратите внимание, что результат проверки зависит от семантики стирания в Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, в то время как выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, поскольку тип аргумента стирается во время компиляции, невозможно проверить, являются ли элементы списка указанного типа.
- returns
trueесли объект-получатель является экземпляром стираемого типаT0;falseв противном случае.
- Definition Classes
- Any
final def isTraversableAgain: Boolean
Проверяет, может ли данная коллекция-обход представлять собой повторяемый обход.
- returns
true
- Definition Classes
- TraversableLike → GenTraversableLike → GenTraversableOnce
def iterator: Iterator[(K, V)]
Создаёт новый итератор по всем парам ключ/значение в этом отображении.
- returns
новый итератор
- Definition Classes
- AnyRefMap → MapLike → IterableLike → GenIterableLike
def keySet: collection.Set[K]
Собирает все ключи этого отображения в множестве.
- returns
множество, содержащее все ключи этого отображения.
- Definition Classes
- MapLike → GenMapLike
def keys: collection.Iterable[K]
Собирает все ключи этого отображения в коллекцию типа Iterable.
- returns
ключи этого отображения как коллекция Iterable.
- Definition Classes
- MapLike → GenMapLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
keysвозвращаетIterable[K]вместоIterator[K].
def keysIterator: Iterator[K]
Создаёт итератор для всех ключей.
- returns
итератор по всем ключам.
- Definition Classes
- MapLike → GenMapLike
def last: (K, V)
Возвращает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
Последний элемент этой коллекции-обхода.
- Definition Classes
- TraversableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementExceptionЕсли коллекция-обход пуста.
def lastOption: Option[(K, V)]
Возвращает последний элемент, или None, если коллекция пуста.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
последний элемент этой коллекции-обхода, если она непуста, или None, если она пуста.
- Definition Classes
- TraversableLike → GenTraversableLike
def lift: (K) ⇒ Option[V]
Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.
- returns
функцию, принимающую аргумент
xи возвращающуюSome(this(x))еслиthisопределена дляx, иNoneв противном случае.
- Definition Classes
- PartialFunction
- See also
Function.unlift
def map[B](f: (A) ⇒ B): Map[B]
Строит новую коллекцию, применяя функцию ко всем элементам этого изменяемого отображения.
- B
тип элемента возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новое изменяемое отображение, полученное путём применения заданной функции
fк каждому элементу этого изменяемого отображения и сбора результатов.
- Definition Classes
- TraversableLike → GenTraversableLike → FilterMonadic
def mapResult[NewTo](f: (AnyRefMap[K, V]) ⇒ NewTo): Builder[(K, V), NewTo]
Создаёт новый билдер, применяя функцию преобразования к результатам работы этого билдера.
- NewTo
тип коллекции, возвращаемой
f.- f
функция преобразования.
- returns
новый билдер, который идентичен текущему билдеру, за исключением того, что к результату работы этого билдера применяется функция преобразования.
- Definition Classes
- Builder
- Note
Оригинальный билдер больше использовать нельзя после того, как был вызван метод
mapResult.
def mapValues[W](f: (V) ⇒ W): collection.Map[K, W]
Преобразует эту карту, применяя функцию к каждому извлечённому значению.
- f
функция, используемая для преобразования значений этой карты.
- returns
представление карты, сопоставляющее каждый ключ этой карты со значением, полученным в результате вызова функции
f(this(key)). Результирующая карта оборачивает исходную карту без копирования элементов.
- Definition Classes
- MapLike → GenMapLike
def mapValuesNow[V1](f: (V) ⇒ V1): AnyRefMap[K, V1]
Создаёт новую AnyRefMap с другими значениями. В отличие от mapValues, этот метод сразу создаёт новую коллекцию.
def max: A
Находит максимальный элемент.
- returns
наибольший элемент этой изменяемой карты.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если эта изменяемая карта пустая.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наибольшее значение, измеряемое функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этой изменяемой карты с наибольшим значением, измеряемым функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли эта изменяемая карта пустая.
def min: A
Находит наименьший элемент.
- returns
наименьший элемент этой изменяемой карты.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли эта изменяемая карта пустая.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наименьшее значение, измеряемое функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этой изменяемой карты с наименьшим значением, измеряемым функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли эта изменяемая карта пустая.
def mkString: String
Отображает все элементы этой коллекции или итератора в строку.
- returns
строковое представление этой коллекции или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этой коллекции или итератора следуют друг за другом без разделителя.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этой коллекции или итератора в строку с использованием разделителя.
- sep
строка-разделитель.
- returns
строковое представление этой коллекции или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этой коллекции или итератора разделены строкойsep.
- Definition Classes
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого итерируемого объекта или итератора в строке, используя строки start, end и разделитель.
- start
начальная строка.
- sep
строка-разделитель.
- end
конечная строка.
- returns
строковое представление этого итерируемого объекта или итератора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри, строковые представления (в соответствии с методомtoString) всех элементов этого итерируемого объекта или итератора разделяются строкойsep.
- Definition Classes
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- returns
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def newBuilder: Builder[(K, V), AnyRefMap[K, V]]
Общее реализация newBuilder для всех изменяемых карт с точки зрения empty.
Переопределяет MapLike для лучшей эффективности.
- Attributes
- protected[this]
- Definition Classes
- MapLike → MapLike → TraversableLike → HasNewBuilder
def nonEmpty: Boolean
Проверяет, не является ли итерируемый объект или итератор пустым.
- returns
trueесли итерируемый объект или итератор содержит хотя бы один элемент,falseв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуживает единственную нить, которая ожидает монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано SLS как член AnyRef
final def notifyAll(): Unit
Разбуживает все нити, которые ожидают монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано SLS как член AnyRef
def orElse[A1 <: K, B1 >: V](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]
Компонует эту частичную функцию с частичной функцией-заместителем, которая применяется там, где эта частичная функция не определена.
- A1
тип аргумента функции-заместителя
- B1
тип результата функции-заместителя
- that
функция-заместитель
- returns
частичная функция, у которой область определения является объединением областей определения этой частичной функции и
that. Результирующая частичная функция принимаетxкthis(x), гдеthisопределена, и кthat(x)где она не определена.
- Definition Classes
- PartialFunction
def par: ParMap[K, V]
Возвращает параллельную реализацию этого набора.
Для большинства типов наборов этот метод создает новый параллельный набор, копируя все элементы. Для этих наборов метод par выполняется за линейное время. Изменяемые наборы в этой категории не создают изменяемый параллельный набор с тем же основным набором данных, поэтому изменения в одном наборе не будут отражены в другом.
Специфические наборы (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельный набор, использующий те же основные данные. Для этих наборов par выполняется за постоянное или подлинейное время.
Все параллельные наборы возвращают ссылку на себя.
- returns
параллельная реализация этого набора
- Definition Classes
- Parallelizable
def parCombiner: Combiner[(K, V), ParMap[K, V]]
Реализация par по умолчанию использует комбинирование, предоставленное этим методом, для создания нового параллельного набора.
- returns
комбинатор для параллельного набора типа
ParRepr
- Attributes
- protected[this]
- Definition Classes
- MapLike → MapLike → TraversableLike → Parallelizable
def partition(p: ((K, V)) ⇒ Boolean): (AnyRefMap[K, V], AnyRefMap[K, V])
Разделяет эту коллекцию итераций на две коллекции итераций в соответствии с предикатом.
- p
предикат, по которому нужно разделить.
- returns
пара коллекций итераций: первая коллекция итераций содержит все элементы, которые удовлетворяют предикату
p, а вторая коллекция итераций содержит все элементы, которые не удовлетворяют. Относительный порядок элементов в полученных коллекциях итераций такой же, как и в исходной коллекции итераций.
- Definition Classes
- TraversableLike → GenTraversableLike
def product: A
Перемножает элементы этой коллекции.
- returns
произведение всех элементов в этой изменяемой карте чисел типа
Int. ВместоInt, можно использовать любой другой типTс неявной реализациейNumeric[T]в качестве типа элементов изменяемой карты и типа результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def put(key: K, value: V): Option[V]
Добавляет новую пару ключ/значение в эту карту и необязательно возвращает ранее связанное значение. Если карта уже содержит сопоставление для ключа, оно будет перезаписано новым значением.
- key
ключ для обновления
- value
новое значение
- returns
опциональный результат, содержащий значение, связанное с ключом до выполнения операции
put, илиNone, еслиkeyне было определено в карте ранее.
def reduce[A1 >: (K, V)](op: (A1, A1) ⇒ A1): A1
Применяет заданный ассоциативный бинарный оператор к элементам этой коллекции итераций.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Тип параметра для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce
opмежду всеми элементами, если коллекция итераций не пустая.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если эта коллекция итераций пуста.
def reduceLeft[B >: (K, V)](op: (B, (K, V)) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой коллекции итераций слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен, либо оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции итераций слева направо:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)где
x1, ..., xnявляются элементами этой коллекции итераций.
- Definition Classes
- TraversableOnce
- Exceptions thrown
UnsupportedOperationException, если эта коллекция итераций пуста.
def reduceLeftOption[B >: (K, V)](op: (B, (K, V)) ⇒ B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции итераций слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен, либо оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
опциональный результат, содержащий результат
reduceLeft(op)если эта коллекция итераций не пустая,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: (K, V)](op: (A1, A1) ⇒ A1): Option[A1]
Сводит элементы этого итерируемого объекта или итератора, если таковые имеются, используя заданный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
- A1
Параметр типа для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Значение типа Option, содержащее результат применения оператора reduce к всем элементам, если коллекция непуста, и
Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceRight[B >: (K, V)](op: ((K, V), B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой итерируемой коллекции, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой итерируемой коллекции, двигаясь справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn— элементы этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если эта итерируемая коллекция пуста.
def reduceRightOption[B >: (K, V)](op: ((K, V), B) ⇒ B): Option[B]
Возможно применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если базовый тип коллекции упорядочен или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение типа Option, содержащее результат
reduceRight(op), если этот итерируемый объект или итератор не пуст,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def remove(key: K): Option[V]
Удаляет ключ из этого отображения, возвращая ассоциированное с ним значение в виде Option.
- key
ключ, который нужно удалить
- returns
значение типа Option, содержащее значение, ранее ассоциированное с
key, илиNone, еслиkeyне было определено в отображении ранее.
- Definition Classes
- MapLike
def repack(): Unit
Переупаковывает содержимое этого AnyRefMap для максимальной эффективности поиска.
Для отображений, которые проходят сложный процесс создания с добавлением и удалением ключей, а затем используются интенсивно без дальнейшего удаления элементов, вызов repack после завершения создания может привести к улучшению производительности. Переупаковка занимает время, пропорциональное количеству записей в отображении.
def repr: AnyRefMap[K, V]
Коллекция типа итерируемая коллекция, лежащая в основе этого TraversableLike объекта. По умолчанию это реализуется как сам объект TraversableLike, но это можно переопределить.
- Definition Classes
- TraversableLike → GenTraversableLike
def result(): AnyRefMap[K, V]
Результат, когда это отображение используется в качестве билдера
- returns
само представление отображения.
def retain(p: (K, V) ⇒ Boolean): AnyRefMap.this.type
Оставляет только те отображения, для которых предикат p возвращает true.
- p
предикат-тест
- Definition Classes
- MapLike
def reversed: List[(K, V)]
- Атрибуты
- protected[this]
- Классы определений
- TraversableOnce
def runWith[U](action: (V) ⇒ U): (K) ⇒ Boolean
Компонует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для своих побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализовано через applyOrElse и, следовательно, потенциально более эффективно. Использование runWith избегает двойной оценки совпадений шаблонов и условий для литералов частичных функций.
- action
функция действия
- возвращает
функцию, которая отображает аргументы
xвisDefinedAt(x). Результирующая функция выполняетaction(this(x))там, гдеthisопределена.
- Классы определений
- PartialFunction
- С тех пор
2.10
- См. также
applyOrElse.
def sameElements(that: GenIterable[A]): Boolean
Проверяет, содержит ли другая итерируемая коллекция те же элементы в том же порядке, что и эта изменяемая карта.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- that
коллекция для сравнения.
- возвращает
true, если обе коллекции содержат одинаковые элементы в том же порядке,falseв противном случае.
- Классы определений
- IterableLike → GenIterableLike
def scan[B >: (K, V), That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[AnyRefMap[K, V], B, That]): That
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
- B
тип элементов результирующей коллекции
- That
тип результирующей коллекции
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- cbf
фабрика комбайнера, которая предоставляет комбайнер
- возвращает
новая итерируемая коллекция, содержащая префиксное сканирование элементов в этой итерируемой коллекции
- Классы определений
- TraversableLike → GenTraversableLike
def scanLeft[B, That](z: B)(op: (B, (K, V)) ⇒ B)(implicit bf: CanBuildFrom[AnyRefMap[K, V], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- возвращает
коллекция с промежуточными результатами
- Классы определений
- TraversableLike → GenTraversableLike
def scanRight[B, That](z: B)(op: ((K, V), B) ⇒ B)(implicit bf: CanBuildFrom[AnyRefMap[K, V], B, That]): That
Производит коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0) Поведение
scanRightизменилось. Предыдущее поведение можно воспроизвести с помощью scanRight.reverse.
def seq: Map[K, V]
Версия этой коллекции со всеми операциями, реализованными последовательно (т.е. в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределяется, чтобы возвращать последовательную реализацию этой коллекции. В обоих случаях сложность составляет O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- Map → Map → GenMap → GenMapLike → Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce
def size: Int
Размер этой изменяемой карты.
- returns
количество элементов в этой изменяемой карте.
- Definition Classes
- AnyRefMap → GenTraversableLike → TraversableOnce → GenTraversableOnce
def sizeHint(coll: TraversableLike[_, _], delta: Int): Unit
Подсказка о том, что ожидается, что размер этого билдера будет таким же, как у заданной коллекции, плюс некоторое значение delta. Эта подсказка будет действовать только если коллекция имеет метод с низкой стоимостью size. В настоящее время это предполагается только для коллекций типа IndexedSeqLike. Некоторые классы билдеров оптимизируют своё представление на основе этой подсказки. Однако реализации билдеров должны корректно работать даже если подсказка неверна, т.е. добавлено другое количество элементов.
- coll
коллекция, которая служит подсказкой для размера результата.
- delta
поправка для добавления к размеру, чтобы получить размер подсказки.
- Definition Classes
- Builder
def sizeHint(coll: TraversableLike[_, _]): Unit
Подсказка о том, что ожидается, что размер этого билдера будет таким же, как у заданной коллекции. Эта подсказка будет действовать только если коллекция имеет метод с низкой стоимостью size, который определяется вызовом sizeHint.
Некоторые классы билдеров оптимизируют своё представление на основе этой подсказки. Однако реализации билдеров должны корректно работать даже если подсказка неверна, т.е. добавлено другое количество элементов.
- coll
коллекция, которая служит подсказкой для размера результата.
- Definition Classes
- Builder
def sizeHint(size: Int): Unit
Подсказка о том, сколько элементов ожидается добавить при следующем вызове result. Некоторые классы билдеров оптимизируют своё представление на основе этой подсказки. Однако реализации билдеров должны корректно работать даже если подсказка неверна, т.е. добавлено другое количество элементов.
- size
подсказка о том, сколько элементов будет добавлено.
- Definition Classes
- Builder
def sizeHintBounded(size: Int, boundingColl: TraversableLike[_, _]): Unit
Подсказка о том, сколько элементов ожидается добавить при следующем вызове result, вместе с верхней границей, заданной размером другой коллекции. Некоторые классы билдеров оптимизируют своё представление на основе этой подсказки. Однако реализации билдеров должны корректно работать даже если подсказка неверна, т.е. добавлено другое количество элементов.
- size
подсказка о том, сколько элементов будет добавлено.
- boundingColl
ограничивающая коллекция. Если это IndexedSeqLike, то размеры, превышающие размер коллекции, уменьшаются.
- Definition Classes
- Builder
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если его можно вычислить с низкой стоимостью
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер не может быть определен с низкой стоимостью
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(from: Int, until: Int): AnyRefMap[K, V]
Выбирает интервал элементов. Возвращаемый набор состоит из всех элементов x, которые удовлетворяют следующему условию:
from <= indexOf(x) < until
Примечание: результаты могут отличаться при разных запусках, если тип базового набора не упорядочен.
- returns
итерабельный набор, содержащий элементы, большие или равные индексу
from, простирающийся до (но не включая) индексаuntilэтого итерабельного набора.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def sliding(size: Int, step: Int): Iterator[AnyRefMap[K, V]]
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" над ними (в отличие от разделения их, как это делается в grouped.)
- size
число элементов в группе
- step
расстояние между первыми элементами последовательных групп
- returns
Итератор, генерирующий наборы элементов размером
size, за исключением последнего элемента (который может быть единственным), который будет усечен, если оставшихся элементов меньше, чемsize.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
sliding
def sliding(size: Int): Iterator[AnyRefMap[K, V]]
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" над ними (в отличие от разделения их, как это делается в grouped). Шаг "скользящего окна" установлен в единицу.
- size
число элементов в группе
- returns
Итератор, генерирующий наборы элементов размером
size, за исключением последнего элемента (который может быть единственным), который будет усечен, если оставшихся элементов меньше, чемsize.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
sliding
def span(p: ((K, V)) ⇒ Boolean): (AnyRefMap[K, V], AnyRefMap[K, V])
Разделяет этот итерабельный набор на пару префикс/суффикс согласно предикату.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: результаты могут отличаться при разных запусках, если тип базового набора не упорядочен.
- returns
пара, состоящая из самого длинного префикса этого итерабельного набора, элементы которого удовлетворяют
p, и остальная часть этого итерабельного набора.
- Definition Classes
- TraversableLike → GenTraversableLike
def splitAt(n: Int): (AnyRefMap[K, V], AnyRefMap[K, V])
Разделяет этот итерабельный набор на два по заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: результаты могут отличаться при разных запусках, если тип базового набора не упорядочен.
- n
позиция, по которой следует разделить.
- returns
пара итерабельных наборов, состоящая из первых
nэлементов этого итерабельного набора и других элементов.
- Definition Classes
- TraversableLike → GenTraversableLike
def stringPrefix: String
Определяет префикс представления этого объекта.
- returns
строковое представление, которое начинается с результата
toString, примененного к этой карте. Если не переопределено в подклассах, строковый префикс каждой карты —"Map".
- Definition Classes
- MapLike → TraversableLike → GenTraversableLike
def sum: A
Суммирует элементы этого набора.
- returns
сумма всех элементов в этой изменяемой карте чисел типа
Int. ВместоInt, можно использовать любой другой типT, имеющий неявнуюNumeric[T]реализацию, как тип элементов изменяемой карты и как тип возвращаемого значенияsum. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
def tail: AnyRefMap[K, V]
Выбирает все элементы, кроме первого.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- returns
итерируемое множество, содержащее все элементы этого итерируемого множества, кроме первого.
- Definition Classes
- TraversableLike → GenTraversableLike
- Exceptions thrown
java.lang.UnsupportedOperationExceptionесли итерируемое множество пусто.
def tails: Iterator[AnyRefMap[K, V]]
Итерация по хвостам этого итерируемого множества. Первое значение будет этим итерируемым множеством, а последнее — пустым итерируемым множеством, промежуточные значения — результаты последовательных применений tail.
- returns
итератор по всем хвостам этого итерируемого множества
- Definition Classes
- TraversableLike
List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)
def take(n: Int): AnyRefMap[K, V]
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- n
количество элементов, которые нужно взять из этого итерируемого набора.
- returns
итерируемое множество, содержащее только первые
nэлементов этого итерируемого множества, или же всё итерируемое множество, если в нём меньшеnэлементов. Еслиnотрицательно, возвращает пустое итерируемое множество.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def takeRight(n: Int): AnyRefMap[K, V]
Выбирает последние n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- n
количество элементов для выбора
- returns
итерируемое множество, содержащее только последние
nэлементов этого итерируемого множества, или же всё итерируемое множество, если в нём меньшеnэлементов.
- Definition Classes
- IterableLike
def takeWhile(p: ((K, V)) ⇒ Boolean): AnyRefMap[K, V]
Берет самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- returns
самый длинный префикс этого итерируемого множества, чьи элементы все удовлетворяют предикату
p.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def thisCollection: collection.Iterable[(K, V)]
Базовое множество, рассматриваемое как экземпляр Iterable. По умолчанию это реализуется как сам текущий объект множества, но это можно переопределить.
- Attributes
- protected[this]
- Definition Classes
- IterableLike → TraversableLike
def to[Col[_]]: Col[A]
Преобразует эту изменяемую карту в другую, копируя все элементы.
- Col
Тип итерируемого множества для построения.
- returns
новое итерируемое множество, содержащее все элементы этой изменяемой карты.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует эту изменяемую карту в массив.
- returns
массив, содержащий все элементы этой изменяемой карты. Должен быть доступен
ClassTagдля типа элементов этой изменяемой карты.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toBuffer[E >: (K, V)]: Buffer[E]
Использует содержимое этой карты для создания нового изменяемого буфера.
- returns
буфер, содержащий все элементы этой карты.
- Definition Classes
- MapLike → TraversableOnce → GenTraversableOnce
def toCollection(repr: AnyRefMap[K, V]): collection.Iterable[(K, V)]
Преобразование из коллекций типа Repr в объекты типа Iterable. По умолчанию это реализовано как просто приведение типа, но это можно переопределить.
- Attributes
- protected[this]
- Definition Classes
- IterableLike → TraversableLike
def toIndexedSeq: immutable.IndexedSeq[(K, V)]
Преобразует это итерируемое или итератор в индексированную последовательность.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
индексированная последовательность, содержащая все элементы этого итерируемого или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIterable: collection.Iterable[(K, V)]
Возвращает эту итерируемую коллекцию как итерируемую коллекцию.
Новая коллекция не будет построена; ленивые коллекции останутся ленивыми.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
итерируемая коллекция, содержащая все элементы этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableOnce → GenTraversableOnce
def toIterator: Iterator[(K, V)]
Возвращает итератор над элементами в этой итерируемой коллекции. Производит тот же результат, что и iterator.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
итератор, содержащий все элементы этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableOnce
- Annotations
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toList: List[(K, V)]
Преобразует это итерируемое или итератор в список.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
список, содержащий все элементы этого итерируемого или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toMap[T, U]: collection.Map[T, U]
Преобразует эту изменяемую карту в карту. Этот метод недоступен, если элементы не являются членами Tuple2, при этом каждый ((T, U)) становится парой ключ-значение в карте. Повторные ключи будут перезаписаны более поздними ключами: если это неупорядоченная коллекция, ключ, который находится в результирующей карте, не определен.
- returns
карта типа
immutable.Map[T, U]содержащая все пары ключ/значение типа(T, U)этой изменяемой карты.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toParArray: ParArray[T]
- Неявный
- Этот член добавлен неявным преобразованием из AnyRefMap[K, V] в CollectionsHaveToParArray[AnyRefMap[K, V], T] с помощью метода CollectionsHaveToParArray в scala.collection.parallel. Это преобразование будет выполнено только в том случае, если неявное значение типа (AnyRefMap[K, V]) ⇒ GenTraversableOnce[T] находится в области видимости.
- Definition Classes
- CollectionsHaveToParArray
def toSeq: collection.Seq[(K, V)]
Преобразует эту изменяемую карту в последовательность.
: предполагает быстрый Notesize метод. Подклассы должны переопределить, если это не так.
- returns
последовательность, содержащая все элементы этой изменяемой карты.
- Definition Classes
- MapLike → MapLike → TraversableOnce → GenTraversableOnce
def toSet[B >: (K, V)]: immutable.Set[B]
Преобразует этот итерируемый объект или итератор в множество.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
множество, содержащее все элементы этого итерируемого объекта или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toStream: immutable.Stream[(K, V)]
Преобразует эту итерируемую коллекцию в поток.
- возвращает
поток, содержащий все элементы этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableLike → GenTraversableOnce
def toString(): String
Преобразует эту карту в строку.
- возвращает
строковое представление этой коллекции. По умолчанию эта строка состоит из
stringPrefixэтой карты, за которой следуют все элементы, разделенные запятыми и заключенные в скобки.
- Определяющие классы
- MapLike → TraversableLike → Function1 → AnyRef → Any
def toTraversable: collection.Traversable[(K, V)]
Преобразует эту итерируемую коллекцию в неопределенную коллекцию Traversable. Вернет ту же коллекцию, если этот экземпляр уже является Traversable.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
Traversable, содержащая все элементы этой итерируемой коллекции.
- Определяющие классы
- TraversableLike → TraversableOnce → GenTraversableOnce
- Аннотации
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toVector: Vector[(K, V)]
Преобразует этот итерируемый объект или итератор в Vector.
Примечание: не будет завершаться для коллекций бесконечного размера.
- возвращает
вектор, содержащий все элементы этого итерируемого объекта или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def transform(f: (K, V) ⇒ V): AnyRefMap.this.type
Применяет функцию преобразования ко всем значениям, содержащимся в этой карте. Функция преобразования генерирует новые значения из существующих пар ключ-значение.
- f
применяемое преобразование
- возвращает
сама карта.
- Определяющие классы
- MapLike
def transformValues(f: (V) ⇒ V): AnyRefMap.this.type
Применяет функцию преобразования ко всем значениям, хранящимся в этой карте. Примечание: значение по умолчанию, если таковое имеется, не преобразуется.
def transpose[B](implicit asTraversable: ((K, V)) ⇒ GenTraversableOnce[B]): Iterable[Iterable[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))
- B
тип элементов каждой итерируемой коллекции.
- asTraversable
явное преобразование, которое утверждает, что тип элемента этой коллекции является
Traversable.- возвращает
двумерная коллекция коллекций, где n-я строка соответствует n-му столбцу этой коллекции.
- Определяющие классы
- GenericTraversableTemplate
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.9.0)
transposeвызываетIllegalArgumentExceptionесли коллекции не имеют одинаковый размер.- Исключения
IllegalArgumentExceptionесли все коллекции в этой коллекции не имеют одинаковый размер.
def unzip[A1, A2](implicit asPair: ((K, V)) ⇒ (A1, A2)): (Iterable[A1], Iterable[A2])
Преобразует это множество пар в два множества первой и второй половины каждой пары.
val xs = Traversable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three))
- A1
тип первой половины пар элементов
- A2
тип второй половины пар элементов
- asPair
явное преобразование, которое утверждает, что тип элементов этого множества — пара.
- returns
пара множеств, содержащая первую и, соответственно, вторую половину каждой пары элементов этого множества.
- Definition Classes
- GenericTraversableTemplate
def unzip3[A1, A2, A3](implicit asTriple: ((K, V)) ⇒ (A1, A2, A3)): (Iterable[A1], Iterable[A2], Iterable[A3])
Преобразует это множество троек в три множества первого, второго и третьего элемента каждой тройки.
val xs = Traversable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three),
// Traversable(1, 2, 3))
- A1
тип первого члена троек элементов
- A2
тип второго члена троек элементов
- A3
тип третьего члена троек элементов
- asTriple
явное преобразование, которое утверждает, что тип элементов этого множества — тройка.
- returns
тройка множеств, содержащая первый, второй и, соответственно, третий член каждой тройки элементов этого множества.
- Definition Classes
- GenericTraversableTemplate
def update(key: K, value: V): Unit
Обновляет карту, включив новую пару ключ-значение.
Это самый быстрый способ добавить запись в AnyRefMap.
- key
Ключ для обновления
- value
Новое значение
def updated[V1 >: V](key: K, value: V1): AnyRefMap[K, V1]
Создаёт новую карту, содержащую все пары ключ/значение текущей карты плюс новую пару заданного ключа и значения.
- V1
тип добавленного значения
- key
Ключ для добавления
- value
Новое значение
- returns
Новая неизменяемая карта с добавленной связью от
keyдоvalueк этой карте.
def values: collection.Iterable[V]
Собирает все значения этой карты в итерируемом наборе.
- returns
значения этой карты в виде итерируемого набора.
- Definition Classes
- MapLike → GenMapLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
valuesвозвращаетIterable[V]вместоIterator[V].
def valuesIterator: Iterator[V]
Создаёт итератор для всех значений в этой карте.
- returns
итератор по всем значениям, связанным с каким-либо ключом в этой карте.
- Definition Classes
- MapLike → GenMapLike
def view(from: Int, until: Int): IterableView[(K, V), AnyRefMap[K, V]]
Создаёт нестрогий вид среза этого итерируемого набора.
Примечание: разница между view и slice в том, что view создаёт вид текущего итерируемого набора, а slice создаёт новый итерируемый набор.
Примечание: view(from, to) эквивалентно view.slice(from, to)
Примечание: может возвращать разные результаты при разных запусках, если только тип базового множества не упорядочен.
- from
индекс первого элемента представления
- until
индекс элемента, следующий за представлением
- returns
нестрогий вид среза этого итерируемого набора, начинающийся с индекса
fromи продолжающийся до (но не включая) индексаuntil.
- Definition Classes
- IterableLike → TraversableLike
def view: IterableView[(K, V), AnyRefMap[K, V]]
Создаёт нестрогий вид этого итерируемого набора.
- returns
нестрогий вид этого итерируемого набора.
- Definition Classes
- IterableLike → TraversableLike
final def wait(): Unit
- Определения классов
- AnyRef
- Аннотации
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Определения классов
- AnyRef
- Аннотации
- @throws( ... )
final def wait(arg0: Long): Unit
def withDefault(d: (K) ⇒ V): Map[K, V]
Та же карта с заданной функцией по умолчанию.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
- d
функция, сопоставляющая ключи со значениями, используемая для отсутствующих ключей
- возвращает
обёртку карты со значением по умолчанию
- Определения классов
- Map
def withDefaultValue(d: V): Map[K, V]
Та же карта с заданным значением по умолчанию.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
- d
значение по умолчанию, используемое для отсутствующих ключей
- возвращает
обёртку карты со значением по умолчанию
- Определения классов
- Map
def withFilter(p: ((K, V)) ⇒ Boolean): FilterMonadic[(K, V), AnyRefMap[K, V]]
Создаёт нестрогий фильтр этой коллекцию.
Примечание: Разница между c filter p и c withFilter p в том, что первый создаёт новую коллекцию, а второй только ограничивает область применения последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- p
предикат, используемый для проверки элементов.
- возвращает
объект класса
WithFilter, который поддерживаетmap,flatMap,foreach, иwithFilterоперации. Все эти операции применяются к тем элементам этой коллекции, которые удовлетворяют предикатуp.
- Определения классов
- TraversableLike → FilterMonadic
def zip[B](that: GenIterable[B]): Map[(A, B)]
Возвращает изменяемую карту, сформированную из этой изменяемой карты и другой итерируемой коллекции, комбинируя соответствующие элементы в парах. Если одна из двух коллекций длиннее другой, её оставшиеся элементы игнорируются.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип второй половины возвращённых пар
- that
итерируемая коллекция, предоставляющая вторую половину каждой пары результата
- возвращает
новая изменяемая карта, содержащая пары, состоящие из соответствующих элементов этой изменяемой карты и
that. Длина возвращённой коллекции — минимальное значение из длин этой изменяемой карты иthat.
- Определения классов
- IterableLike → GenIterableLike
def zipAll[B](that: collection.Iterable[B], thisElem: A, thatElem: B): Map[(A, B)]
Возвращает изменяемую карту, образованную из этой изменяемой карты и другого итерируемого набора, объединяя соответствующие элементы попарно. Если один из двух наборов короче другого, используются заполнители для расширения более короткого набора до длины более длинного.
Примечание: могут возвращаться разные результаты при разных запусках, если тип базового набора не упорядочен.
- B
тип второй половины возвращаемых пар
- that
Итерируемый набор, предоставляющий вторую половину каждой пары результата
- thisElem
элемент, используемый для заполнения результата, если эта изменяемая карта короче, чем
that.- thatElem
элемент, используемый для заполнения результата, если
thatкороче, чем эта изменяемая карта.- returns
новая изменяемая карта, содержащая пары, состоящие из соответствующих элементов этой изменяемой карты и
that. Длина возвращаемого набора — максимальная из длин этой изменяемой карты иthat. Если эта изменяемая карта короче, чемthat, используются значенияthisElemдля заполнения результата. Еслиthatкороче, чем эта изменяемая карта, используются значенияthatElemдля заполнения результата.
- Definition Classes
- IterableLike → GenIterableLike
def zipWithIndex: Map[(A, Int)]
Объединяет эту изменяемую карту с её индексами.
Примечание: могут возвращаться разные результаты при разных запусках, если тип базового набора не упорядочен.
- returns
Новая изменяемая карта, содержащая пары, состоящие из всех элементов этой изменяемой карты, соединённых с их индексом. Индексы начинаются с
0.
- Definition Classes
- IterableLike → GenIterableLike
List("a", "b", "c").zipWithIndex = List(("a", 0), ("b", 1), ("c", 2))
def →[B](y: B): (AnyRefMap[K, V], B)
- Неявный
- Этот член добавлен неявным преобразованием из AnyRefMap[K, V] в ArrowAssoc[AnyRefMap[K, V]], выполненным методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
Затенённые неявные члены значения
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из AnyRefMap[K, V] в any2stringadd[AnyRefMap[K, V]] при помощи метода any2stringadd в scala.Predef.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(anyRefMap: any2stringadd[AnyRefMap[K, V]]).+(other)
- Определяющие классы
- any2stringadd
def filter(p: ((K, V)) ⇒ Boolean): TraversableOnce[(K, V)]
- Неявный
- Этот член добавлен неявным преобразованием из AnyRefMap[K, V] в MonadOps[(K, V)] при помощи метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(anyRefMap: MonadOps[(K, V)]).filter(p)
- Определяющие классы
- MonadOps
def flatMap[B](f: ((K, V)) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из AnyRefMap[K, V] в MonadOps[(K, V)] при помощи метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(anyRefMap: MonadOps[(K, V)]).flatMap(f)
- Определяющие классы
- MonadOps
def map[B](f: ((K, V)) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из AnyRefMap[K, V] в MonadOps[(K, V)] при помощи метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(anyRefMap: MonadOps[(K, V)]).map(f)
- Определяющие классы
- MonadOps
def withFilter(p: ((K, V)) ⇒ Boolean): Iterator[(K, V)]
- Неявный
- Этот член добавлен неявным преобразованием из AnyRefMap[K, V] в MonadOps[(K, V)] при помощи метода MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(anyRefMap: MonadOps[(K, V)]).withFilter(p)
- Определяющие классы
- MonadOps
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/mutable/AnyRefMap.html
Этот класс реализует изменяемые карты с
AnyRefключами, основанные на хэш-таблице с открытым адресованием.Базовые операции над картой по отдельным записям, включая
containsиget, обычно значительно быстрее сAnyRefMapпо сравнению с HashMap. Обратите внимание, что числа и символы не обрабатываются специально в AnyRefMap; в сравнениях используются только простыеequalsиhashCode.Методы, которые просматривают или перегенерируют карту, включая
foreachиmap, как правило, не быстрее, чем сHashMap. Однако методыforeachKey,foreachValue,mapValuesNow, иtransformValuesбыстрее, чем альтернативные способы достижения той же функциональности.Карты с открытым адресованием могут стать менее эффективными при поиске после многократного добавления/удаления элементов. Хотя
AnyRefMapделает попытку оставаться эффективными независимо от этого, вызовrepackдля карты, из которой больше не будут удаляться элементы, но по которой будут интенсивные обращения, может сэкономить время и место.Эта карта не предназначена для хранения более 229 записей (приблизительно 500 миллионов). Максимальная емкость составляет 230, но производительность будет быстро снижаться, когда приблизится к 230.