Особенность scala.collection.concurrent.Map
особенность Map[A, B] extends mutable.Map[A, B]
Типовые члены
класс DefaultKeySet extends AbstractSet[K] with Set[K] with Serializable
Реализующий класс набора, возвращаемого keySet.
- Атрибуты
- protected
- Определяющие классы
- MapLike
класс DefaultValuesIterable extends AbstractIterable[V] with Iterable[V] with Serializable
Реализующий класс итерируемого, возвращаемого values.
- Атрибуты
- protected
- Определяющие классы
- MapLike
класс FilteredKeys extends AbstractMap[K, V] with DefaultMap[K, V]
- Атрибуты
- protected
- Определяющие классы
- MapLike
класс MappedValues[W] extends AbstractMap[K, W] with DefaultMap[K, W]
- Атрибуты
- protected
- Определяющие классы
- MapLike
класс WithFilter extends FilterMonadic[A, Repr]
Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.
- Определяющие классы
- TraversableLike
тип Self = mutable.Map[A, B]
Тип, реализующий этот обход
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableLike
Абстрактные члены-значения
abstract def +=(kv: (A, B)): Map.this.type
Добавляет новую пару ключ/значение в этот массив. Если в массиве уже есть сопоставление для ключа, оно будет перезаписано новым значением.
- kv
пара ключ/значение.
- returns
сам массив
abstract def -=(key: A): Map.this.type
Удаляет ключ из этого массива.
- key
ключ для удаления
- returns
сам массив.
- Definition Classes
- MapLike → Shrinkable
abstract def get(key: A): Option[B]
Возвращает значение, связанное с ключом.
- key
значение ключа
- returns
объект типа Option, содержащий значение, связанное с
keyв этом массиве, илиNoneесли такого значения нет.
- Definition Classes
- MapLike → GenMapLike
abstract def iterator: Iterator[(A, B)]
Создает новый итератор по всем парам ключ/значение в этом массиве
- returns
новый итератор
- Definition Classes
- MapLike → IterableLike → GenIterableLike
abstract def putIfAbsent(k: A, v: B): Option[B]
Связывает указанный ключ со значением, если ключ ранее не был связан с каким-либо другим значением.
Это атомарная операция.
- k
ключ, с которым должно быть связано указанное значение
- v
значение, которое должно быть связано с указанным ключом
- returns
Some(oldvalue)если ранее существовало значениеoldvalueсвязанное с указанным ключом, илиNoneесли для указанного ключа не было сопоставления
abstract def remove(k: A, v: B): Boolean
Удаляет запись для указанного ключа, если он в настоящее время сопоставлен с указанным значением.
Это атомарная операция.
- k
ключ, для которого должна быть удалена запись
- v
значение, ожидаемое для сопоставления с указанным ключом, если удаление должно произойти
- returns
trueесли удаление произошло,falseв противном случае
abstract def replace(k: A, v: B): Option[B]
Заменяет запись для данного ключа только в том случае, если он ранее был сопоставлен с каким-либо значением.
Это атомарная операция.
- k
ключ, для которого должна быть заменена запись
- v
значение, которое должно быть связано с указанным ключом
- returns
Some(v)если указанный ключ ранее был сопоставлен с каким-либо значениемv, илиNoneв противном случае
abstract def replace(k: A, oldvalue: B, newvalue: B): Boolean
Заменяет запись для данного ключа только в том случае, если он ранее был сопоставлен с заданным значением.
Это атомарная операция.
- k
ключ, для которого должна быть заменена запись
- oldvalue
значение, ожидаемое для сопоставления с указанным ключом, если замена должна произойти
- newvalue
значение, которое должно быть связано с указанным ключом
- returns
trueесли запись была заменена,falseв противном случае
Конкретные члены значения
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- returns
trueif !(this == that), false otherwise.
- Определяющие классы
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением boxed numeric типов и null. Для чисел, он возвращает хеш-значение, которое согласуется с равенством значений: если два экземпляра типа значения сравниваются как true, то ## будет производить одно и то же хеш-значение для каждого из них. Для null возвращает хеш-код, где null.hashCode вызывает NullPointerException.
- returns
хеш-значение, согласующееся с ==
- Определяющие классы
- AnyRef → Any
def +[V1 >: B](elem1: (A, V1), elem2: (A, V1), elems: (A, V1)*): mutable.Map[A, V1]
Создает новую карту, содержащую две или более сопоставлений ключ/значение и все сопоставления ключ/значение этой карты.
Указанные сопоставления переопределят существующие сопоставления из этой карты с теми же ключами.
- V1
тип добавляемых значений
- elem1
первый элемент для добавления.
- elem2
второй элемент для добавления.
- elems
остальные элементы для добавления.
- returns
новая карта, содержащая сопоставления этой карты и две или более указанных сопоставлений.
def +[V1 >: B](kv: (A, V1)): mutable.Map[A, V1]
Создает новую карту, содержащую новое сопоставление ключ/значение и все сопоставления ключ/значение этой карты.
Сопоставление kv переопределит существующие сопоставления из этой карты с тем же ключом.
- V1
тип значения в паре ключ/значение.
- kv
сопоставление ключ/значение для добавления
- returns
новая карта, содержащая сопоставления этой карты и сопоставление
kv.
- Определяющие классы
- MapLike → MapLike → GenMapLike
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.8.0)
+создает новую карту. Используйте+=для добавления элемента в эту карту и возврата самой карты.
def ++[V1 >: B](xs: GenTraversableOnce[(A, V1)]): mutable.Map[A, V1]
Создает новую карту, содержащую сопоставления ключ/значение, предоставленные указанным объектом traversable, и все сопоставления ключ/значение этой карты.
Обратите внимание, что существующие сопоставления из этой карты с тем же ключом, что и в xs, будут переопределены.
- V1
тип добавляемых значений
- xs
объект traversable.
- returns
новая карта, содержащая сопоставления этой карты и те, которые предоставлены
xs.
def ++[B >: (A, B), That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[mutable.Map[A, B], B, That]): That
Возвращает новую коллекцию traversable, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента коллекции traversable является наиболее специфическим суперклассом, охватывающим типы элементов двух операндов.
- B
тип элемента возвращаемой коллекции.
- That
класс возвращаемой коллекции. По возможности,
That- это тот же класс, что и текущий класс коллекцииRepr, но это зависит от типа элементаB, допустимого для этого класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
traversable для добавления.
- bf
неявное значение класса
CanBuildFrom, которое определяет результирующий классThatиз текущего типа представленияReprи нового типа элементаB.- returns
новая коллекция типа
That, которая содержит все элементы этой коллекции traversable, за которыми следуют все элементыthat.
- Определяющие классы
- TraversableLike → GenTraversableLike
def ++:[B >: (A, B), That](that: Последовательность[B])(implicit bf: CanBuildFrom[mutable.Map[A, B], 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: Последовательность раз[B]): Карта[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: Последовательность раз[(A, B)]): Map.this.type
добавляет все элементы, произведённые TraversableOnce, в эту растущую коллекцию.
- xs
Последовательность раз, производящая добавляемые элементы.
- returns
сама растущая коллекция.
- Definition Classes
- Growable
def +=(elem1: (A, B), elem2: (A, B), elems: (A, B)*): Map.this.type
добавляет два или более элементов в эту растущую коллекцию.
- elem1
первый добавляемый элемент.
- elem2
второй добавляемый элемент.
- elems
остальные добавляемые элементы.
- returns
сама растущая коллекция
- Definition Classes
- Growable
def -(elem1: A, elem2: A, elems: A*): mutable.Map[A, B]
Создаёт новую карту со всеми парами "ключ-значение" этой карты, за исключением пар с ключами, равными любому из двух или более указанных ключей.
- elem1
первый удаляемый элемент.
- elem2
второй удаляемый элемент.
- elems
оставшиеся удаляемые элементы.
- returns
новая карта, содержащая все пары "ключ-значение" этой карты, за исключением пар с ключом, равным
elem1,elem2или любому изelems.
- Definition Classes
- MapLike → Subtractable
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
-создаёт новую карту. Используйте-=для удаления элемента из этой карты и возвращения самой карты.
def -(key: A): mutable.Map[A, B]
Создаёт новую карту со всеми парами "ключ-значение" этой карты, за исключением пары "ключ-значение" с указанным ключом.
- key
удаляемый ключ
- returns
новая карта со всеми парами "ключ-значение" этой карты, за исключением пары с ключом
key.
- Definition Classes
- MapLike → MapLike → Subtractable → GenMapLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
-создаёт новую карту. Используйте-=для удаления элемента из этой карты и возвращения самой карты.
def --(xs: GenTraversableOnce[A]): mutable.Map[A, B]
Создаёт новую карту, содержащую все пары ключ/значение из этой карты, кроме пар, у которых ключи равны любому из ключей, перечисленных в указанном итерируемом объекте.
- xs
итерируемый объект.
- returns
новая карта, содержащая все пары ключ/значение из этой карты, кроме пар, у которых ключ равен ключу из
xs.
- Definition Classes
- MapLike → Subtractable
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
--создаёт новую карту. Используйте--=для удаления элемента из этой карты и возврата самой карты.
def --=(xs: TraversableOnce[A]): Map.this.type
Удаляет все элементы, полученные из итератора, из этого уменьшаемого набора.
- xs
итератор, генерирующий элементы для удаления.
- returns
сам уменьшаемый набор.
- Definition Classes
- Shrinkable
def -=(elem1: A, elem2: A, elems: A*): Map.this.type
Удаляет два или более элементов из этого уменьшаемого набора.
- elem1
первый элемент для удаления.
- elem2
второй элемент для удаления.
- elems
остальные элементы для удаления.
- returns
сам уменьшаемый набор.
- Definition Classes
- Shrinkable
def ->[B](y: B): (Map[A, B], B)
- Implicit
- Этот член добавлен неявным преобразованием из Map[A, B] в ArrowAssoc[Map[A, B]] с помощью метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
def /:[B](z: B)(op: (B, (A, B)) ⇒ 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: ((A, B), 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: StringBuilder, start: String, sep: String, end: String): StringBuilder
Добавляет все привязки этой карты в строковый массив, используя начальную, конечную и разделительные строки. Записанный текст начинается со строки start и заканчивается строкой end. Внутри, строковые представления всех привязок этой карты в форме key -> value разделены строкой sep.
- b
массив, к которому добавляются строки.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковый массив
b, к которому были добавлены элементы.
- Определяющие классы
- MapLike → TraversableOnce
def addString(b: StringBuilder): 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, к которому были добавлены элементы.
- Определяющие классы
- TraversableOnce
def addString(b: StringBuilder, sep: String): 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, к которому были добавлены элементы.
- Определяющие классы
- TraversableOnce
def aggregate[B](z: ⇒ B)(seqop: (B, (A, B)) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общая форма fold и reduce. Она похожа на foldLeft в том, что не требует, чтобы результат был супертипом типа элемента. Кроме того, она позволяет обрабатывать параллельные коллекции по частям, а затем объединять промежуточные результаты.
aggregate разбивает обход или итератор на разделы и обрабатывает каждый раздел, последовательно применяя seqop, начиная с z (как foldLeft). Затем эти промежуточные результаты объединяются с помощью combop (как fold). Реализация этой операции может работать с произвольным числом разделов коллекции (даже 1), поэтому combop может вызываться произвольное число раз (даже 0).
В качестве примера рассмотрим суммирование целочисленных значений списка символов. Начальное значение для суммы равно 0. Сначала seqop преобразует каждый входной символ в Int и добавляет его к сумме (раздела). Затем combop просто нужно суммировать промежуточные результаты разделов:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип накопленных результатов
- z
начальное значение для накопленного результата раздела — это обычно будет нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования) и может вычисляться более одного раза- seqop
оператор, используемый для накопления результатов внутри раздела
- combop
ассоциативный оператор, используемый для объединения результатов из разных разделов
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def andThen[C](k: (B) ⇒ C): PartialFunction[A, C]
Комбинирует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
- C
тип результата функции преобразования.
- k
функция преобразования
- returns
частичная функция с той же областью определения, что и эта частичная функция, которая отображает аргументы
xнаk(this(x)).
- Определяющие классы
- PartialFunction → Function1
def apply(key: A): B
Извлекает значение, которое связано с заданным ключом. Этот метод вызывает метод default карты, если нет сопоставления из данного ключа со значением. Если не переопределено, метод default вызывает NoSuchElementException.
- key
ключ
- returns
значение, связанное с заданным ключом, или результат метода
defaultкарты, если такового не существует.
- Определяющие классы
- MapLike → GenMapLike → Function1
def applyOrElse[K1 <: A, V1 >: B](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
- Exceptions thrown
ClassCastException, если текущий объект не является экземпляром стираемого типаT0.
def canEqual(that: Any): Boolean
Метод, вызываемый методами равенства, чтобы дочерние классы, определенные пользователем, могли отказаться от равенства с другими коллекциями того же типа.
- that
Объект, с которым должна быть сравнена эта коллекция элементов
- returns
true, если эта коллекция элементов может быть равнаthat,falseв противном случае. Тест учитывает только типы объектов во время выполнения, но игнорирует их элементы.
- Definition Classes
- IterableLike → Equals
def clear(): Unit
Удаляет все связи из карты. После завершения этой операции карта будет пустой.
def clone(): mutable.Map[A, B]
Создает копию текущего объекта.
По умолчанию реализация метода clone зависит от платформы.
- returns
копию текущего объекта.
def collect[B](pf: PartialFunction[A, B]): Map[B]
Создает новую коллекцию, применяя частичную функцию ко всем элементам этой конкурирующей карты, для которых функция определена.
- B
тип элементов возвращаемой коллекции.
- pf
частичная функция, фильтрующая и отображающая конкурирующую карту.
- returns
новая конкурирующая карта, полученная в результате применения заданной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def collectFirst[B](pf: PartialFunction[(A, B), 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[mutable.Iterable]
Объект-компаньон фабрики, создающий экземпляры класса Iterable. (или его Iterable суперкласса, где класс Iterable не является Seq.)
- Definition Classes
- Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → GenericTraversableTemplate
def compose[A](g: (A) ⇒ A): (A) ⇒ B
Компонует два экземпляра Function1 в новый Function1, при этом эта функция применяется последней.
- A
тип, к которому можно применить функцию
g- g
функция A => T1
- returns
новая функция
f, такая чтоf(x) == apply(g(x))
- Definition Classes
- Function1
- Annotations
- @unspecialized()
def contains(key: A): Boolean
Проверяет, содержит ли эта карта привязку для ключа.
- key
ключ
- returns
true, если дляkeyесть привязка в этой карте,falseв противном случае.
- Definition Classes
- 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 >: (A, B)](dest: Buffer[B]): Unit
Копирует все элементы этого итерируемого объекта или итератора в буфер.
Примечание: не завершится для коллекций бесконечного размера.
- dest
Буфер, в который копируются элементы.
- Definition Classes
- TraversableOnce
def count(p: ((A, B)) ⇒ Boolean): Int
Подсчитывает количество элементов в итерируемом объекте или итераторе, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def default(key: A): B
Определяет вычисление значения по умолчанию для карты, возвращаемое, когда ключ не найден. Реализованный здесь метод генерирует исключение, но он может быть переопределен в подклассах.
- key
заданное значение ключа, для которого отсутствует привязка.
- Definition Classes
- MapLike → GenMapLike
- Исключения
def drop(n: Int): mutable.Map[A, B]
Выбирает все элементы, кроме первых n.
Примечание: результаты могут отличаться при разных запусках, если тип базовой коллекции не упорядочен.
- n
Количество элементов, которые нужно удалить из этой итерируемой коллекции.
- returns
итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, кроме первых
nэлементов, или же пустая итерируемая коллекция, если эта итерируемая коллекция содержит меньшеnэлементов. Еслиnотрицательно, элементы не удаляются.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def dropRight(n: Int): mutable.Map[A, B]
Выбирает все элементы, кроме последних n.
Примечание: результаты могут отличаться при разных запусках, если тип базовой коллекции не упорядочен.
- n
Количество элементов для взятия
- returns
итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, кроме последних
nэлементов, или же пустая итерируемая коллекция, если эта итерируемая коллекция содержит меньшеnэлементов.
- Definition Classes
- IterableLike
def dropWhile(p: ((A, B)) ⇒ Boolean): mutable.Map[A, B]
Удаляет самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Примечание: результаты могут отличаться при разных запусках, если тип базовой коллекции не упорядочен.
- returns
самый длинный суффикс этой итерируемой коллекции, первый элемент которого не удовлетворяет предикату
p.
- Definition Classes
- TraversableLike → GenTraversableLike
def empty: mutable.Map[A, B]
Пустая карта того же типа, что и эта карта
- returns
пустая карта типа
This.
def ensuring(cond: (Map[A, B]) ⇒ Boolean, msg: ⇒ Any): Map[A, B]
- Implicit
- Этот член добавлен неявным преобразованием из Map[A, B] в Ensuring[Map[A, B]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (Map[A, B]) ⇒ Boolean): Map[A, B]
- Implicit
- Этот член добавлен неявным преобразованием из Map[A, B] в Ensuring[Map[A, B]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Map[A, B]
- Implicit
- Этот член добавлен неявным преобразованием из Map[A, B] в Ensuring[Map[A, B]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): Map[A, B]
- Неявный
- Этот член добавляется неявным преобразованием из Map[A, B] в Ensuring[Map[A, B]] выполненным методом Ensuring в scala.Predef.
- Определяющие классы
- 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).
- возвращает
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Определяющие классы
- AnyRef
def equals(that: Any): Boolean
Структурно сравнивает два отображения; т.е. проверяет, содержатся ли все отображения, содержащиеся в этом отображении, также и в другом отображении, и наоборот.
- that
другое отображение
- возвращает
trueесли оба отображения содержат ровно те же отображения,falseв противном случае.
- Определяющие классы
- GenMapLike → Equals → AnyRef → Any
def exists(p: ((A, B)) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат хотя бы для одного элемента этого итерируемого набора.
Примечание: может не завершиться для бесконечных наборов.
- p
предикат, используемый для проверки элементов.
- возвращает
falseесли этот итерируемый набор пуст, иначеtrueесли данный предикатpвыполняется для некоторых элементов этого итерируемого набора, иначеfalse
- Определяющие классы
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def filter(p: ((A, B)) ⇒ Boolean): mutable.Map[A, B]
Выбирает все элементы этого итерируемого набора, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- возвращает
новый итерируемый набор, состоящий из всех элементов этого итерируемого набора, которые удовлетворяют данному предикату
p. Порядок элементов сохраняется.
- Определяющие классы
- TraversableLike → GenTraversableLike
def filterKeys(p: (A) ⇒ Boolean): collection.Map[A, B]
Фильтрует это отображение, сохраняя только ключи, удовлетворяющие предикату.
Примечание: предикат должен принимать любой ключ типа K, а не только те, которые уже присутствуют в отображении, так как предикат проверяется до запроса к подлежащему отображению.
- p
используемый предикат для проверки ключей
- возвращает
неизменяемое отображение, содержащее только те пары ключ-значение этого отображения, где ключ удовлетворяет предикату
p. Результирующее отображение оборачивает исходное отображение без копирования каких-либо элементов.
- Определяющие классы
- MapLike → GenMapLike
def filterNot(p: ((A, B)) ⇒ Boolean): mutable.Map[A, B]
Возвращает новое отображение, полученное путем удаления всех пар ключ/значение, для которых предикат p возвращает true.
Примечание: Этот метод работает, последовательно удаляя элементы, для которых предикат является истинным, из этого набора. Если удаление медленное, или вы ожидаете, что большинство элементов набора будут удалены, вы можете рассмотреть возможность использования filter с отрицаемым предикатом вместо этого.
- p
Предикат над парами ключ-значение
- возвращает
Новое отображение, содержащее элементы, не удовлетворяющие предикату.
- Определяющие классы
- MapLike → TraversableLike → GenTraversableLike
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.
Подробности о том, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
- Атрибуты
- protected[lang]
- Определяющие классы
- AnyRef
- Аннотации
- @throws( classOf[java.lang.Throwable] )
- Примечание
не указано SLS как член AnyRef
def find(p: ((A, B)) ⇒ Boolean): Option[(A, B)]
Находит первый элемент в итерируемой коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
- 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 >: (A, B)](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, (A, B)) ⇒ 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: ((A, B), 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: ((A, B)) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этого итерируемого набора.
Примечание: может не завершиться для бесконечных наборов.
- p
предикат, используемый для проверки элементов.
- returns
trueесли этот итерируемый набор пустой или данный предикатpвыполняется для всех элементов этого итерируемого набора, в противном случаеfalse.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def foreach(f: ((A, B)) ⇒ Unit): Unit
Применяет функцию f ко всем элементам этой конкурирующей карты.
Примечание: этот метод лежит в основе реализации большинства других массовых операций. Подклассы должны переопределять этот метод, если существует более эффективная реализация.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fигнорируется.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой format. Форматные строки аналогичны строкам String.format (@см. java.lang.String.format).
- Неявное
- Этот член добавляется неявным преобразованием из Map[A, B] в StringFormat[Map[A, B]] с помощью метода StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
def genericBuilder[B]: Builder[B, mutable.Iterable[B]]
Обобщенный билдер, который создает экземпляры Traversable для произвольных типов элементов.
- Definition Classes
- GenericTraversableTemplate
final def getClass(): Class[_]
Возвращает представление runtime-класса объекта.
- returns
объект класса, соответствующий типу runtime приемника.
def getOrElse(key: A, default: ⇒ B): B
Возвращает значение, связанное с ключом, или значение по умолчанию, если ключ не содержится в карте.
- key
ключ.
- default
вычисление, которое возвращает значение по умолчанию в случае, если для
keyнет привязки в карте.- returns
значение, связанное с
keyесли оно существует, в противном случае результат вычисленияdefault.
- Definition Classes
- MapLike → GenMapLike
def getOrElseUpdate(key: A, op: ⇒ B): B
Если заданный ключ уже есть в этой карте, возвращает связанное значение.
В противном случае вычисляет значение из заданного выражения op, сохраняет его с ключом в карте и возвращает это значение.
Реализации конкурирующих карт могут вычислять выражение op несколько раз или могут вычислить op без вставки результата.
- key
ключ для проверки
- op
вычисление, возвращающее значение для ассоциации с
key, еслиkeyранее не был привязан.- returns
значение, связанное с ключом (либо ранее, либо как результат выполнения метода).
def groupBy[K](f: ((A, B)) ⇒ K): immutable.Map[K, mutable.Map[A, B]]
Разделяет эту коллекцию-проход по элементам на карту коллекций-проходов согласно некоторой функции-дискриминатора.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда принудительно создает новое представление и возвращает новую коллекцию-проход.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- returns
-
Карта, сопоставляющая ключи коллекциям-проходам, таким образом, чтобы выполнялось следующее инвариантное свойство:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kсопоставлен с коллекцией-проходом элементовxдля которыхf(x)равноk.
- Definition Classes
- TraversableLike → GenTraversableLike
def grouped(size: Int): Iterator[mutable.Map[A, B]]
Разделяет элементы на итерируемые коллекции фиксированного размера.
- size
количество элементов в каждой группе
- returns
Итератор, генерирующий итерируемые коллекции размером
size, за исключением последней, размер которой будет меньше sizesizeесли элементы не делятся на размер группы.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
grouped
def hasDefiniteSize: Boolean
Проверяет, известен ли конечный размер этой коллекции-прохода. Все строгие коллекции известны, как имеющие конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true если все элементы были вычислены. Он возвращает false если поток ещё не проанализирован до конца. Непустые итераторы обычно возвращают false даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с бесконечными коллекциями. Типичным режимом отказа является бесконечный цикл. Эти методы всегда пытаются выполнить обход, не проверяя сначала, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер определен и бесконечная итерация не является проблемой.
- returns
trueесли для этой коллекции известен конечный размер,falseв противном случае.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- returns
значение хэш-кода для этого объекта.
- Definition Classes
- GenMapLike → AnyRef → Any
def head: (A, B)
Выбирает первый элемент этой итерируемой коллекции.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
первый элемент этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementExceptionесли итерируемая коллекция пуста.
def headOption: Option[(A, B)]
Возвращает первый элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
первый элемент этой коллекции-прохода, если она не пуста,
Noneесли она пуста.
- Definition Classes
- TraversableLike → GenTraversableLike
def init: mutable.Map[A, B]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
коллекция-проход, содержащая все элементы этой коллекции-прохода, кроме последнего.
- Definition Classes
- TraversableLike → GenTraversableLike
- Exceptions thrown
UnsupportedOperationExceptionесли коллекция-проход пуста.
def inits: Iterator[mutable.Map[A, B]]
Итерирует по начальным частям этой коллекции-прохода. Первое значение будет этой коллекцией-проходом, а последнее - пустой коллекцией-проходом, а промежуточные значения - результатами последовательных применений init.
- returns
итератор по всем начальным частям этой коллекции-прохода
- Definition Classes
- TraversableLike
List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)
def isDefinedAt(key: A): 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. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, содержат ли элементы списка указанный тип.
- возвращает
trueесли объект-получатель является экземпляром стирания типаT0;falseв противном случае.
- Определяющие классы
- Any
final def isTraversableAgain: Boolean
Проверяет, может ли эта коллекция-проход повторяться многократно.
- возвращает
true
- Определяющие классы
- TraversableLike → GenTraversableLike → GenTraversableOnce
def keySet: Set[A]
Собраны все ключи этой карты в множестве.
- возвращает
множество, содержащее все ключи этой карты.
- Определяющие классы
- MapLike → GenMapLike
def keys: Iterable[A]
Собраны все ключи этой карты в итерируемой коллекции.
- возвращает
ключи этой карты в виде итерируемого объекта.
- Определяющие классы
- MapLike → GenMapLike
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.8.0)
keysвозвращаетIterable[K]вместоIterator[K].
def keysIterator: Iterator[A]
Создает итератор для всех ключей.
- возвращает
итератор по всем ключам.
- Определяющие классы
- MapLike → GenMapLike
def last: (A, B)
Выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- возвращает
Последний элемент этой итерируемой коллекции.
- Определяющие классы
- TraversableLike → GenTraversableLike
- Исключения
NoSuchElementExceptionЕсли итерируемая коллекция пуста.
def lastOption: Option[(A, B)]
Необязательно выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- возвращает
последний элемент этой итерируемой коллекции, если она не пуста,
Noneесли она пуста.
- Определяющие классы
- TraversableLike → GenTraversableLike
def lift: (A) ⇒ Option[B]
Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.
- возвращает
функция, которая принимает аргумент
xкSome(this(x))еслиthisопределено дляx, и кNoneв противном случае.
- Определяющие классы
- PartialFunction
- См. также
Function.unlift
def map[B](f: (A) ⇒ B): Map[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этой конкуретентной карты.
- B
тип элемента возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- возвращает
новую конкуретентную карту, полученную путём применения заданной функции
fк каждому элементу этой конкуретентной карты и сбора результатов.
- Классы-определения
- TraversableLike → GenTraversableLike → FilterMonadic
def mapResult[NewTo](f: (mutable.Map[A, B]) ⇒ NewTo): Builder[(A, B), NewTo]
Создаёт новый билдер, применяя функцию преобразования к результатам этого билдера.
- NewTo
тип коллекции, возвращаемой
f.- f
функция преобразования.
- возвращает
новый билдер, такой же, как текущий билдер, за исключением того, что функция преобразования применяется к результату этого билдера.
- Классы-определения
- Builder
- Примечание
Оригинальный билдер больше не должен использоваться после вызова
mapResult.
def mapValues[W](f: (B) ⇒ W): collection.Map[A, W]
Преобразует эту карту, применяя функцию к каждому извлечённому значению.
- f
функция, используемая для преобразования значений этой карты.
- возвращает
вид карты, которая отображает каждый ключ этой карты на
f(this(key)). Результирующая карта оборачивает исходную карту без копирования каких-либо элементов.
- Классы-определения
- MapLike → GenMapLike
def max: A
Находит наибольший элемент.
- возвращает
наибольший элемент этой конкуретентной карты.
- Классы-определения
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если эта конкуретентная карта пуста.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
- B
тип результата функции f.
- f
функция измерения.
- возвращает
первый элемент этой конкуретентной карты с наибольшим значением, измеренным функцией f.
- Классы-определения
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если эта конкуретентная карта пуста.
def min: A
Находит наименьший элемент.
- возвращает
наименьший элемент этой конкуретентной карты.
- Классы-определения
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если эта конкуретентная карта пуста.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.
- B
тип результата функции f.
- f
функция измерения.
- возвращает
первый элемент этой конкуретентной карты с наименьшим значением, измеренным функцией f.
- Классы-определения
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если эта конкуретентная карта пуста.
def mkString: String
Отображает все элементы этой проходимой коллекции или итератора в строку.
- возвращает
строковое представление этой проходимой коллекции или итератора. В результирующей строке строковые представления (с учётом метода
toString) всех элементов этой проходимой коллекции или итератора следуют друг за другом без разделительной строки.
- Классы-определения
- 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
начальная строка.
- 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[(A, B), mutable.Map[A, B]]
Общее реализация 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 <: A, B1 >: B](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]
Компонует эту частичную функцию с резервной частичной функцией, которая применяется в тех случаях, когда эта частичная функция не определена.
- A1
тип аргумента резервной функции
- B1
тип результата резервной функции
- that
резервная функция
- returns
частичная функция, область определения которой является объединением областей определения этой частичной функции и
that. Результирующая частичная функция принимаетxвthis(x), гдеthisопределена, и вthat(x)в противном случае.
- Definition Classes
- PartialFunction
def par: ParMap[A, B]
Возвращает параллельную реализацию этого объекта.
Для большинства типов коллекций этот метод создает новую параллельную коллекцию, копируя все элементы. Для этих коллекций метод par занимает линейное время. Изменяемые коллекции в этой категории не производят изменяемую параллельную коллекцию, которая имеет тот же базовый набор данных, поэтому изменения в одной коллекции не будут отражены в другой.
Конкретные коллекции (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельную коллекцию, которая использует тот же базовый набор данных. Для этих коллекций par занимает постоянное или подлинейное время.
Все параллельные коллекции возвращают ссылку на себя.
- returns
параллельная реализация этого объекта
- Definition Classes
- Parallelizable
def parCombiner: Combiner[(A, B), ParMap[A, B]]
Реализация по умолчанию par использует комбинатор, предоставленный этим методом, для создания новой параллельной коллекции.
- returns
комбинатор для параллельной коллекции типа
ParRepr
- Атрибуты
- protected[this]
- Определяющие классы
- MapLike → MapLike → TraversableLike → Parallelizable
def partition(p: ((A, B)) ⇒ Boolean): (mutable.Map[A, B], mutable.Map[A, B])
Разделяет эту коллекцию обхода на две коллекции обхода в соответствии с предикатом.
- p
предикат, по которому следует разделить.
- returns
пара коллекций обхода: первая коллекция обхода состоит из всех элементов, которые удовлетворяют предикату
p, а вторая коллекция обхода состоит из всех элементов, которые не удовлетворяют. Относительный порядок элементов в результирующих коллекциях обхода такой же, как и в исходной коллекции обхода.
- Определяющие классы
- TraversableLike → GenTraversableLike
def product: A
Перемножает элементы этой коллекции.
- returns
произведение всех элементов в этой конкуретном отображении чисел типа
Int. ВместоInt, любой другой типTс неявнойNumeric[T]реализацией может быть использован в качестве типа элементов конкуретного отображения и в качестве типа результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def put(key: A, value: B): Option[B]
Добавляет новую пару ключ/значение в это отображение и необязательно возвращает ранее связанное значение. Если в отображении уже есть отображение для ключа, оно будет заменено новым значением.
- key
ключ для обновления
- value
новое значение
- returns
опционное значение, содержащее значение, связанное с ключом перед выполнением операции
put, илиNone, еслиkeyне было определено в отображении ранее.
- Определяющие классы
- MapLike
def reduce[A1 >: (A, B)](op: (A1, A1) ⇒ A1): A1
Редуцирует элементы этого объекта обхода или итератора с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Параметр типа для бинарного оператора, сверхтип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce
opмежду всеми элементами, если коллекция обхода или итератор не пустые.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот обход или итератор пустые.
def reduceLeft[B >: (A, B)](op: (B, (A, B)) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого объекта обхода или итератора слева направо.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может вернуть разные результаты для разных запусков, если тип базовой коллекции не упорядочен, или оператор не ассоциативный и коммутативный.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого объекта обхода или итератора слева направо:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)где
x1, ..., xn— элементы этого объекта обхода или итератора.
- Определяющие классы
- TraversableOnce
- Исключения
UnsupportedOperationException, если этот обход или итератор пустые.
def reduceLeftOption[B >: (A, B)](op: (B, (A, B)) ⇒ B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого объекта обхода или итератора слева направо.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может вернуть разные результаты для разных запусков, если тип базовой коллекции не упорядочен, или оператор не ассоциативный и коммутативный.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
опционное значение, содержащее результат
reduceLeft(op)если этот обход или итератор не пустой,Noneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: (A, B)](op: (A1, A1) ⇒ A1): Option[A1]
Сводит элементы этого обхода или итератора, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок, в котором операции выполняются над элементами, не указан и может быть недетерминированным.
- A1
Типовой параметр для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Необязательное значение, содержащее результат применения оператора сводки
opмежду всеми элементами, если коллекция не пуста, иNoneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def reduceRight[B >: (A, B)](op: ((A, B), B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой итерируемой коллекции, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой итерируемой коллекции, справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn— элементы этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableOnce → GenTraversableOnce
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта итерируемая коллекция пуста.
def reduceRightOption[B >: (A, B)](op: ((A, B), B) ⇒ B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого обхода или итератора, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceRight(op), если этот обход или итератор не пуст,Noneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def remove(key: A): Option[B]
Удаляет ключ из этой карты, возвращая значение, ранее связанное с этим ключом, как необязательное значение.
- key
ключ, который нужно удалить
- returns
необязательное значение, содержащее значение, ранее связанное с
key, илиNone, еслиkeyне был определен в карте ранее.
- Определяющие классы
- MapLike
def repr: mutable.Map[A, B]
Коллекция типа обхода, лежащая в основе этого объекта TraversableLike. По умолчанию это реализовано как сам объект TraversableLike, но это можно переопределить.
- Определяющие классы
- TraversableLike → GenTraversableLike
def result(): mutable.Map[A, B]
Результат, когда эта карта используется как строитель
- returns
само представление карты.
def retain(p: (A, B) ⇒ Boolean): Map.this.type
Сохраняет только те сопоставления, для которых предикат p возвращает true.
- p
Тестовый предикат
- Определяющие классы
- MapLike
def reversed: List[(A, B)]
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableOnce
def runWith[U](action: (B) ⇒ U): (A) ⇒ Boolean
Составляет эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для своих побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализована через applyOrElse и, следовательно, потенциально более эффективна. Использование runWith избегает двойной оценки обработчиков шаблонов и условий для литералов частичных функций.
- action
функция действия
- returns
функция, которая отображает аргументы
xвisDefinedAt(x). Результирующая функция выполняетaction(this(x))там, гдеthisопределена.
- Definition Classes
- PartialFunction
- Since
2.10
- See also
applyOrElse.
def sameElements(that: GenIterable[A]): Boolean
Проверяет, содержит ли другая коллекция итераций те же элементы в том же порядке, что и эта конкурирующая карта.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- that
коллекция для сравнения.
- returns
true, если обе коллекции содержат одинаковые элементы в одинаковом порядке,falseв противном случае.
- Definition Classes
- IterableLike → GenIterableLike
def scan[B >: (A, B), That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[mutable.Map[A, B], B, That]): That
Вычисляет сканирование префикса элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
- B
тип элементов результирующей коллекции
- That
тип результирующей коллекции
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- cbf
фабрика комбинатора, которая предоставляет комбинатор
- returns
новая коллекция итераций, содержащая сканирование префикса элементов в этой коллекции итераций
- Definition Classes
- TraversableLike → GenTraversableLike
def scanLeft[B, That](z: B)(op: (B, (A, B)) ⇒ B)(implicit bf: CanBuildFrom[mutable.Map[A, B], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
def scanRight[B, That](z: B)(op: ((A, B), B) ⇒ B)(implicit bf: CanBuildFrom[mutable.Map[A, B], 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: mutable.Map[A, B]
Версия этой коллекции со всеми операциями, реализованными последовательно (т.е. в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределен для возвращения последовательной реализации этой коллекции. В обоих случаях сложность составляет O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- Map → Map → GenMap → GenMapLike → Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce
def size: Int
Размер этой итерации или перебираемой коллекции.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
количество элементов в этой перебираемой коллекции или итераторе.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def sizeHint(coll: TraversableLike[_, _], delta: Int): Unit
Указывает предположение о том, что размер этого билдера будет равен размеру данной коллекции плюс некоторая разница. Это предположение будет использоваться только в случае, если у коллекции есть метод с низкой стоимостью вычисления размера. В настоящее время это предположение выполняется только для коллекций типа IndexedSeqLike. Некоторые классы билдеров оптимизируют свое представление на основе этого предположения. Тем не менее, реализации билдеров должны работать правильно, даже если предположение неверно, то есть добавлено другое количество элементов.
- coll
коллекция, которая используется как подсказка для размера результата.
- delta
поправка, которая добавляется к размеру, чтобы получить подсказку размера.
- Definition Classes
- Builder
def sizeHint(coll: TraversableLike[_, _]): Unit
Указывает предположение о том, что размер этого билдера будет равен размеру данной коллекции плюс некоторая разница. Это предположение будет использоваться только в случае, если у коллекции есть метод с низкой стоимостью вычисления размера.
Некоторые классы билдеров оптимизируют свое представление на основе этого предположения. Тем не менее, реализации билдеров должны работать правильно, даже если предположение неверно, то есть добавлено другое количество элементов.
- coll
коллекция, которая используется как подсказка для размера результата.
- Definition Classes
- Builder
def sizeHint(size: Int): Unit
Указывает предполагаемое количество элементов, которые будут добавлены при следующем вызове метода. Некоторые классы билдеров оптимизируют свое представление на основе этого предположения. Однако, реализации билдеров должны работать правильно, даже если предположение неверно, т.е. добавлено другое количество элементов.
- size
предполагаемое количество элементов, которые будут добавлены.
- Definition Classes
- Builder
def sizeHintBounded(size: Int, boundingColl: TraversableLike[_, _]): Unit
Указывает предполагаемое количество элементов, которые будут добавлены при следующем вызове метода, а также верхнюю границу, определяемую размером другой коллекции. Некоторые классы билдеров оптимизируют свое представление на основе этого предположения. Однако, реализации билдеров должны работать правильно, даже если предположение неверно, т.е. добавлено другое количество элементов.
- size
предполагаемое количество элементов, которые будут добавлены.
- boundingColl
ограничивающая коллекция. Если это IndexedSeqLike, то размеры, превышающие размер коллекции, уменьшаются.
- Definition Classes
- Builder
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если он может быть вычислен с низкой стоимостью.
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер не может быть определен с низкой стоимостью.
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(from: Int, until: Int): mutable.Map[A, B]
Выбирает интервал элементов. Полученная коллекция содержит все элементы, которые удовлетворяют условию:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты при разных запусках, если тип коллекции не упорядочен.
- returns
итерируемую коллекцию, содержащую элементы, большие или равные индексу
from, и заканчивающуюся (но не включая) индексомuntilэтой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def sliding(size: Int, step: Int): Iterator[mutable.Map[A, B]]
Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения на части, как это делается в grouped).
- size
количество элементов в группе
- step
расстояние между первыми элементами последовательных групп
- returns
Итератор, генерирующий итерируемые коллекции размера
size, за исключением последнего элемента (который может быть единственным), который будет усечён, если оставшихся элементов для группировки меньше, чемsize.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
sliding
def sliding(size: Int): Iterator[mutable.Map[A, B]]
Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения на части, как это делается в grouped). Шаг «скользящего окна» установлен в единицу.
- size
количество элементов в группе
- returns
Итератор, генерирующий итерируемые коллекции размера
size, за исключением последнего элемента (который может быть единственным), который будет усечён, если оставшихся элементов для группировки меньше, чемsize.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
sliding
def span(p: ((A, B)) ⇒ Boolean): (mutable.Map[A, B], mutable.Map[A, B])
Разделяет эту коллекцию итерируемых элементов на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не приводит к побочным эффектам.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не является упорядоченным.
- returns
пара, состоящая из самого длинного префикса этой итерируемой коллекции, элементы которого удовлетворяют
p, и остальной части этой итерируемой коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
def splitAt(n: Int): (mutable.Map[A, B], mutable.Map[A, B])
Разделяет эту коллекцию итерируемых элементов на две части в заданной позиции. Примечание: 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: mutable.Map[A, B]
Выбирает все элементы, кроме первого.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не является упорядоченным.
- returns
коллекция итерируемых элементов, состоящая из всех элементов этой коллекции итерируемых элементов, кроме первого.
- Definition Classes
- TraversableLike → GenTraversableLike
- Exceptions thrown
java.lang.UnsupportedOperationExceptionесли итерируемая коллекция пуста.
def tails: Iterator[mutable.Map[A, B]]
Итерирует хвосты этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее — пустым итерируемым набором, а промежуточные значения — результатами последовательных применений 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): mutable.Map[A, B]
Выбирает первые n элементов.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
- n
количество элементов для взятия из этого итерируемого набора.
- returns
итерируемый набор, содержащий только первые
nэлементов этого итерируемого набора, или весь итерируемый набор, если в нём меньшеnэлементов. Еслиnотрицательное, возвращает пустой итерируемый набор.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def takeRight(n: Int): mutable.Map[A, B]
Выбирает последние n элементов.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
- n
количество элементов для взятия
- returns
итерируемый набор, содержащий только последние
nэлементы этого итерируемого набора, или весь итерируемый набор, если в нём меньшеnэлементов.
- Definition Classes
- IterableLike
def takeWhile(p: ((A, B)) ⇒ Boolean): mutable.Map[A, B]
Берет самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
- returns
самый длинный префикс этого итерируемого набора, чьи элементы все удовлетворяют предикату
p.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def thisCollection: Iterable[(A, B)]
Базовый набор, рассматриваемый как экземпляр 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 >: (A, B)]: Buffer[E]
Использует содержимое этой карты для создания нового изменяемого буфера.
- returns
буфер, содержащий все элементы этой карты.
- Definition Classes
- MapLike → TraversableOnce → GenTraversableOnce
def toCollection(repr: mutable.Map[A, B]): Iterable[(A, B)]
Преобразование из наборов типа Repr в объекты типа Iterable. По умолчанию это реализовано как просто приведение типа, но это можно переопределить.
- Attributes
- protected[this]
- Definition Classes
- IterableLike → TraversableLike
def toIndexedSeq: immutable.IndexedSeq[(A, B)]
Преобразует этот итерируемый объект или итератор в индексированную последовательность.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
индексированная последовательность, содержащая все элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toIterable: Iterable[(A, B)]
Возвращает эту итерируемую коллекцию в виде итерируемой коллекции.
Новая коллекция не будет создана; ленивые коллекции останутся ленивыми.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
a
Iterableсодержащую все элементы этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableOnce → GenTraversableOnce
def toIterator: Iterator[(A, B)]
Возвращает итератор по элементам этой итерируемой коллекции. Возвращает тот же результат, что и iterator.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
итератор, содержащий все элементы этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableOnce
- Annotations
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toList: List[(A, B)]
Преобразует этот итерируемый объект или итератор в список.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
список, содержащий все элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toMap[T, U]: collection.Map[T, U]
Преобразует эту конкурирующую карту в карту. Этот метод недоступен, если элементы не являются членами Tuple2, каждая ((T, U)) становится парой ключ-значение в карте. Повторные ключи будут перезаписаны более поздними ключами: если это неупорядоченная коллекция, ключ, который находится в результирующей карте, не определен.
- returns
a map of type
immutable.Map[T, U]содержащую все пары ключ/значение типа(T, U)этой конкурирующей карты.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toParArray: ParArray[T]
- Неявный
- Этот член добавлен неявным преобразованием из Map[A, B] в CollectionsHaveToParArray[Map[A, B], T] с помощью метода CollectionsHaveToParArray в scala.collection.parallel. Это преобразование будет выполнено только в том случае, если в области видимости есть неявное значение типа (Map[A, B]) ⇒ GenTraversableOnce[T].
- Definition Classes
- CollectionsHaveToParArray
def toSeq: Seq[(A, B)]
Преобразует эту изменяемую карту в последовательность.
: предполагает наличие быстрого Notesize метода. Подклассы должны переопределять, если это не так.
- returns
последовательность, содержащую все элементы этой изменяемой карты.
- Definition Classes
- MapLike → MapLike → TraversableOnce → GenTraversableOnce
def toSet[B >: (A, B)]: immutable.Set[B]
Преобразует этот итерируемый объект или итератор в множество.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
множество, содержащее все элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toStream: immutable.Stream[(A, B)]
Преобразует эту итерируемую коллекцию в поток.
- returns
поток, содержащий все элементы этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableOnce
def toString(): String
Преобразует эту карту в строку.
- returns
строковое представление этого набора. По умолчанию эта строка состоит из
stringPrefixэтой карты, за которой следуют все элементы, разделенные запятыми и заключённые в скобки.
- Definition Classes
- MapLike → TraversableLike → Function1 → AnyRef → Any
def toTraversable: Traversable[(A, B)]
Преобразует этот итерируемый набор в неопределённый Traversable. Возвратит тот же набор, если этот экземпляр уже Traversable.
Примечание: не будет завершаться для бесконечно больших наборов.
- returns
Traversable, содержащий все элементы этого итерируемого набора.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
- Annotations
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toVector: Vector[(A, B)]
Преобразует этот итерируемый набор или итератор в вектор.
Примечание: не будет завершаться для бесконечно больших наборов.
- returns
вектор, содержащий все элементы этого итерируемого набора или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def transform(f: (A, B) ⇒ B): Map.this.type
Применяет функцию преобразования ко всем значениям, содержащимся в этой карте. Функция преобразования производит новые значения из существующих связанных значений ключей.
- f
преобразование для применения
- returns
сама карта.
- Definition Classes
- MapLike
def transpose[B](implicit asTraversable: ((A, B)) ⇒ GenTraversableOnce[B]): mutable.Iterable[mutable.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.- returns
двухмерный набор наборов, где n-я строка — это n-й столбец этого набора.
- Definition Classes
- GenericTraversableTemplate
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0)
transposeвыброситIllegalArgumentExceptionесли наборы не имеют одинаковый размер.- Exceptions thrown
IllegalArgumentExceptionесли все наборы в этом наборе не имеют одинаковый размер.
def unzip[A1, A2](implicit asPair: ((A, B)) ⇒ (A1, A2)): (mutable.Iterable[A1], mutable.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: ((A, B)) ⇒ (A1, A2, A3)): (mutable.Iterable[A1], mutable.Iterable[A2], mutable.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: A, value: B): Unit
Добавляет новую пару ключ/значение в этот массив. Если в массиве уже есть отображение для ключа, оно будет перезаписано новым значением.
- key
Ключ для обновления
- value
Новое значение
- Definition Classes
- MapLike
def updated[V1 >: B](key: A, value: V1): mutable.Map[A, V1]
Создает новый массив, состоящий из всех пар ключ/значение текущего массива плюс новая пара заданного ключа и значения.
- V1
тип добавляемого значения
- key
Ключ для добавления
- value
Новое значение
- returns
Новый неизменяемый массив с добавленной связью от
keyкvalueв этот массив.
def values: Iterable[B]
Собирает все значения этого массива в итерируемую коллекцию.
- returns
значения этого массива как итерируемый объект.
- Definition Classes
- MapLike → GenMapLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
valuesвозвращаетIterable[V]вместоIterator[V].
def valuesIterator: Iterator[B]
Создает итератор для всех значений в этом массиве.
- returns
итератор по всем значениям, связанным с каким-либо ключом в этом массиве.
- Definition Classes
- MapLike → GenMapLike
def view(from: Int, until: Int): IterableView[(A, B), mutable.Map[A, B]]
Создает нестрогий вид среза этой итерируемой коллекции.
Примечание: разница между view и slice в том, что view создаёт представление текущей итерируемой коллекции, а slice создаёт новую итерируемую коллекцию.
Примечание: view(from, to) эквивалентно view.slice(from, to).
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции не упорядочен.
- from
индекс первого элемента представления
- until
индекс элемента, следующего за представлением
- returns
нестрогое представление среза этой итерируемой коллекции, начинающееся с индекса
fromи продолжающееся до (но не включая) индексаuntil.
- Definition Classes
- IterableLike → TraversableLike
def view: IterableView[(A, B), mutable.Map[A, B]]
Создаёт нестрогое представление этой итерируемой коллекции.
- returns
нестрогое представление этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableLike
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
def withDefault(d: (A) ⇒ B): mutable.Map[A, B]
Та же карта с заданной функцией по умолчанию.
Вызов методов трансформации (например, map) не сохранит значение по умолчанию.
- d
функция, отображающая ключи в значения, используемая для отсутствующих ключей
- returns
обёртка карты со значением по умолчанию
- Definition Classes
- Map
def withDefaultValue(d: B): mutable.Map[A, B]
Та же карта с заданным значением по умолчанию.
Вызов методов трансформации (например, map) не сохранит значение по умолчанию.
- d
значение по умолчанию для отсутствующих ключей
- returns
обёртка карты со значением по умолчанию
- Definition Classes
- Map
def withFilter(p: ((A, B)) ⇒ Boolean): FilterMonadic[(A, B), mutable.Map[A, B]]
Создаёт нестрогий фильтр этой коллекции обхода.
Примечание: различие между c filter p и c withFilter p заключается в том, что первый создаёт новую коллекцию, а второй только ограничивает область применения последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
объект класса
WithFilter, который поддерживаетmap,flatMap,foreach, иwithFilterоперации. Все эти операции применяются к тем элементам этой коллекции обхода, которые удовлетворяют предикатуp.
- Definition Classes
- TraversableLike → FilterMonadic
def zip[B](that: GenIterable[B]): Map[(A, B)]
Возвращает конкурерную карту, сформированную из этой конкурерной карты и другой итерируемой коллекции, объединяя соответствующие элементы парами. Если одна из двух коллекций длиннее другой, её оставшиеся элементы игнорируются.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- B
тип второй половины возвращаемых пар
- that
Итерируемая коллекция, предоставляющая вторую половину каждой пары результатов
- returns
новая конкурерная карта, содержащая пары, состоящие из соответствующих элементов этой конкурерной карты и
that. Длина возвращаемой коллекции — минимальная из длин этой конкурерной карты иthat.
- Definition Classes
- IterableLike → GenIterableLike
def zipAll[B](that: 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
def →[B](y: B): (Map[A, B], B)
- Неявный
- Этот член добавлен неявным преобразованием из Map[A, B] в ArrowAssoc[Map[A, B]] выполняемым методом ArrowAssoc в scala.Predef.
- Классы определения
- ArrowAssoc
Затенённые неявные члены-значения
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из Map[A, B] в any2stringadd[Map[A, B]] выполняемым методом any2stringadd в scala.Predef.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(map: any2stringadd[Map[A, B]]).+(other)
- Классы определения
- any2stringadd
def filter(p: ((A, B)) ⇒ Boolean): TraversableOnce[(A, B)]
- Неявный
- Этот член добавлен неявным преобразованием из Map[A, B] в MonadOps[(A, B)] выполняемым методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(map: MonadOps[(A, B)]).filter(p)
- Классы определения
- MonadOps
def flatMap[B](f: ((A, B)) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из Map[A, B] в MonadOps[(A, B)] выполняемым методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(map: MonadOps[(A, B)]).flatMap(f)
- Классы определения
- MonadOps
def map[B](f: ((A, B)) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен неявным преобразованием из Map[A, B] в MonadOps[(A, B)] выполняемым методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(map: MonadOps[(A, B)]).map(f)
- Классы определения
- MonadOps
def withFilter(p: ((A, B)) ⇒ Boolean): Iterator[(A, B)]
- Неявный
- Этот член добавлен неявным преобразованием из Map[A, B] в MonadOps[(A, B)] выполняемым методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать описание типа:(map: MonadOps[(A, B)]).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/concurrent/Map.html
Шаблонный интерфейс для изменяемых карт, позволяющих одновременный доступ.
Это базовый интерфейс для всех реализаций конкурирующих карт Scala. Он предоставляет все методы, которые делает
Map, с той разницей, что все изменения атомарны. Он также описывает методы, специфичные для конкурирующих карт.Примечание: Конкурирующие карты не принимают
nullв качестве ключей или значений.тип ключа карты
тип значения карты
2.8
"Обзор библиотеки коллекций Scala" раздел о
Concurrent Mapsдля получения дополнительной информации.