Класс Map.Map2
final class Map2[K, +V](key1: K, value1: V, key2: K, value2: V) extends AbstractMap[K, V] with StrictOptimizedIterableOps[(K, V), Iterable, Map[K, V]] with Serializable
| Суперобъекты | 22 типа |
|---|
Наследуемые классы
Исходный код
Реализующий класс набора, возвращаемого keySet
| Наследуется от | MapOps |
|---|
Конкретные методы
Исходный код
override def apply(key: K): V
Возвращает значение, связанное с заданным ключом. Этот метод вызывает метод default карты, если нет отображения заданного ключа на значение. Если не переопределено, метод default выбрасывает NoSuchElementException.
| Параметры |
|
|---|---|
| Возвращает | значение, связанное с заданным ключом, или результат метода |
| Определяющие классы | MapOps -> Function1 |
Исходный код
Проверяет, содержит ли эта карта привязку для ключа.
| Параметры |
|
|---|---|
| Возвращает |
|
| Определяющие классы | MapOps |
Исходный код
Проверяет, выполняется ли предикат хотя бы для одного элемента этой неизменяемой карты.
Примечание: может не завершиться для бесконечных коллекций.
| Параметры |
|
|---|---|
| Возвращает |
|
| Определяющие классы | IterableOnceOps |
Исходный код
Проверяет, выполняется ли предикат для всех элементов этой неизменяемой карты.
Примечание: может не завершиться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Классы определений | IterableOnceOps |
Источник
Применить f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в инференции типов scalac.
| Классы определений | IterableOnceOps |
|---|
Источник
Возвращает значение, связанное с ключом.
| Параметры значения |
|
|---|---|
| Возвращает | значение option, содержащее значение, связанное с |
Источник
override def getOrElse[V1 >: V](key: K, default: => V1): V1
Возвращает значение, связанное с ключом, или значение по умолчанию, если ключ не содержится в карте.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение, связанное с |
| Классы определений | MapOps |
Источник
Вычислить значение хэш-кода для объекта.
Алгоритм хэширования по умолчанию зависит от платформы.
Обратите внимание, что для двух объектов могут быть идентичны хэш-коды (o1.hashCode.equals(o2.hashCode)), но они могут не быть равны (o1.equals(o2) возвращает false). Вырожденная реализация могла бы всегда возвращать 0. Однако требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true), у них были идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода убедитесь, что поведение согласуется с методом equals.
| Возвращает | значение хэш-кода для этого объекта. |
|---|---|
| Классы определений | Map -> Any |
Источник
Проверяет, пуста ли неизменяемая карта.
Примечание: Реализации в подклассах, которые не являются многократно проходимыми, должны позаботиться о том, чтобы не потреблять какие-либо элементы, когда isEmpty вызывается.
| Возвращает |
|
|---|---|
| Классы определений | IterableOnceOps |
Источник
Итератор может быть использован только один раз
Source
override def keysIterator: Iterator[K]
Создаёт итератор для всех ключей.
| Возвращает | итератор по всем ключам. |
|---|---|
| Классы-определения | MapOps |
Source
| Возвращает | Количество элементов в этой неизменяемой карте, если его можно вычислить без затрат, в противном случае -1. Незатратно обычно означает: не требует обхода коллекции. |
|---|---|
| Классы-определения | IterableOnce |
Source
Удаляет ключ из этой карты, возвращая новую карту.
| Параметры значения |
|
|---|---|
| Возвращает | новая карта без связки для ключа |
Source
Размер этой неизменяемой карты.
Примечание: не завершится для коллекций с бесконечным размером.
| Возвращает | количество элементов в этой неизменяемой карте. |
|---|---|
| Классы-определения | IterableOnceOps |
Source
Эта функция преобразует все значения отображений, содержащихся в этой карте, с помощью функции f.
| Параметры значения |
|
|---|---|
| Возвращает | обновлённая карта |
| Классы-определения | MapOps |
Source
Создаёт новую карту, полученную путём обновления этой карты заданной парой ключ/значение.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Новая карта с добавленной в эту карту новой связью ключ/значение. <недействительная аннотация inheritdoc> |
Source
override def valuesIterator: Iterator[V]
Создаёт итератор для всех значений в этой карте.
| Возвращает | итератор по всем значениям, связанным с каким-либо ключом в этой карте. |
|---|---|
| Классы-определения | MapOps |
Наследованные методы
Source
override def +[V1 >: V](kv: (K, V1)): CC[K, V1]
Псевдоним для updated
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Новая карта с добавленной в эту карту новой связью. |
| Классы-определения | MapOps -> MapOps |
| Наследуется от | MapOps |
Source
final def ++[B >: (K, V)](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
| Наследуется от | IterableOps |
|---|
Source
def ++[V2 >: V](xs: IterableOnce[(K, V2)]): CC[K, V2]
Псевдоним для concat
| Наследуется от | MapOps |
|---|
Source
final def -(key: K): C
Псевдоним для removed
| Наследуется от | MapOps |
|---|
Source
final override def --(keys: IterableOnce[K]): C
Псевдоним для removedAll
| Классы-определения | MapOps -> MapOps |
|---|---|
| Наследуется от | MapOps |
Source
Добавляет все элементы этой коллекции в строковый буфер. Записанный текст состоит из строковых представлений (с учётом метода toString) всех элементов этой коллекции без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
| Параметры значения |
|
|---|---|
| Возвращает | строковый буфер |
| Наследуется от | IterableOnceOps |
Source
Добавляет все элементы этой коллекции в строковый буфер с помощью разделительной строки. Записанный текст состоит из строковых представлений (с учётом метода toString) всех элементов этой коллекции, разделённых строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
| Параметры значения |
|
|---|---|
| Возвращает | строковый буфер |
| Наследуется от | IterableOnceOps |
Source
Добавляет все элементы этой карты в строковый буфер с использованием начальной, конечной и разделительных строк. Записанный текст начинается со строки start и заканчивается строкой end. Внутри строковые представления (с учётом метода toString) всех элементов этой карты разделены строкой sep.
Пример:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
| Параметры значения |
|
|---|---|
| Возвращает | строковый буфер |
| Классы-определения | MapOps -> IterableOnceOps |
| Наследуется от | MapOps |
Source
Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt на получившейся частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется вызывать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
override def andThen[C](k: V => C): PartialFunction[A, C]
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип функции в runtime является PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, возможно, суженной указанной функцией, которая отображает аргументы |
| Классы определений | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Источник
override def applyOrElse[K1 <: K, V1 >: V](x: K1, default: K1 => V1): V1
Применяет эту частичную функцию к заданному аргументу, если он содержится в области определения функции. Применяет функцию обратного вызова, если эта частичная функция не определена.
Обратите внимание, что выражение pf.applyOrElse(x, default) эквивалентно
if(pf isDefinedAt x) pf(x) else default(x)
за исключением того, что метод applyOrElse может быть реализован более эффективно. Для всех литералов частичных функций компилятор генерирует реализацию applyOrElse, которая избегает двойной оценки сопоставления с образцом и защитных условий. Это делает applyOrElse основой для эффективной реализации во многих операциях и сценариях, таких как:
- объединение частичных функций в цепочки orElse/andThen не приводит к чрезмерной оценке apply/isDefinedAt - lift и unlift не оценивают исходные функции дважды при каждом вызове - runWith позволяет эффективно объединять частичные функции императивным стилем с условными действиями
Для классов частичных функций, не являющихся литералами, с ненулевой функцией isDefinedAt рекомендуется переопределить метод applyOrElse с пользовательской реализацией, которая избегает двойной оценки isDefinedAt. Это может привести к лучшей производительности и более предсказуемому поведению в отношении побочных эффектов.
| Параметры значения |
|
|---|---|
| Возвращает | результат применения этой функции или функции обратного вызова. |
| Классы определений | MapOps -> PartialFunction |
| Унаследовано от | MapOps |
Источник
Метод, который следует вызывать из каждой хорошо спроектированной функции equals, которая может быть переопределена в подклассе. См. Programming in Scala, Chapter 28 для обсуждения и проектирования.
| Параметры значения |
|
|---|---|
| Возвращает | true, если этот экземпляр может быть равен |
| Унаследовано от | Map |
Источник
override def collect[B](pf: PartialFunction[(K, V), B]): CC[B]
Создаёт новую коллекцию итераций, применяя частичную функцию ко всем элементам этой итерационной коллекции, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерационная коллекция, полученная в результате применения заданной частичной функции |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
def collect[K2, V2](pf: PartialFunction[(K, V), (K2, V2)]): CC[K2, V2]
Создаёт новую коллекцию, применяя частичную функцию ко всем элементам этой карты, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая карта, полученная в результате применения данной частичной функции |
| Унаследовано от | MapOps |
Источник
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение Option, содержащее результат применения pf к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Компонует другую частичную функцию k с этой частичной функцией, так что эта частичная функция применяется к результатам k.
Обратите внимание, что вызов isDefinedAt на получившейся частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется вызывать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения другой частичной функции, суженной этой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
def compose[A](g: A => K): A => R
Компонует две инстанции Function1 в новую Function1, с применением этой функции последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая функция |
| Унаследовано от | Function1 |
Исходный код
def concat[B >: (K, V)](suffix: IterableOnce[B]): CC[B]
Возвращает новую итерируемую коллекцию, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элементов итерируемой коллекции — это наиболее общий суперкласс, охватывающий типы элементов обоих операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, которая содержит все элементы этой итерируемой коллекции, за которыми следуют все элементы |
| Унаследовано от | IterableOps |
Исходный код
def concat[V2 >: V](suffix: IterableOnce[(K, V2)]): CC[K, V2]
Возвращает новую карту, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элементов карты — это наиболее общий суперкласс, охватывающий типы элементов обоих операндов.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новая карта, которая содержит все элементы этой карты, за которыми следуют все элементы |
| Унаследовано от | MapOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start максимум len элементами этой коллекции.
Копирование остановится, когда будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов будут скопированы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, необходимо сбросить. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование остановится, когда будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, необходимо сбросить. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этого набора или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование не определено и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя предикату проверки.
Примечание: не будет завершено для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение |
|
| Унаследовано от | IterableOnceOps |
Источник
Подсчитывает количество элементов в наборе, которые удовлетворяют предикату.
Примечание: не будет завершено для наборов бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Источник
def default(key: K): V
Определяет вычисление значения по умолчанию для карты, возвращаемое при отсутствии ключа. Реализованный здесь метод генерирует исключение, но он может быть переопределен в подклассах.
| Параметры значения |
|
|---|---|
| Унаследовано от | MapOps |
Источник
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме первых |
| Унаследовано от | IterableOps |
Источник
Остальная часть набора без его n последних элементов. Для линейных неизменяемых наборов это должно позволить избежать создания копии.
Примечание: даже при применении к представлению или ленивому набору элементы будут всегда принудительно вычисляться.
| Definition Classes | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Inherited from | StrictOptimizedIterableOps |
Source
Оставляет самый длинный суффикс элементов, которые не удовлетворяют предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Value parameters |
|
|---|---|
| Returns | самый длинный суффикс этой итерируемой коллекции, первый элемент которого не удовлетворяет предикату |
| Inherited from | IterableOps |
Source
def elementWise: ElementWiseExtractor[A, B]
Возвращает объект-экстрактор с методом unapplySeq, который извлекает каждый элемент последовательных данных.
| Example |
val firstChar: String => Option[Char] = _.headOption
Seq("foo", "bar", "baz") match {
case firstChar.unlift.elementWise(c0, c1, c2) =>
println(s"$c0, $c1, $c2") // Output: f, b, b
}
|
|---|---|
| Inherited from | PartialFunction |
Source
override def empty: CC[K, V]
Пустая итерируемая коллекция того же типа, что и эта итерируемая коллекция
| Returns | пустая итерируемая коллекция типа |
|---|---|
| Definition Classes | MapFactoryDefaults -> IterableOps |
| Inherited from | MapFactoryDefaults |
Source
Равенство карт реализуется с использованием метода поиска get. Этот метод возвращает true, если
аргумент
oявляетсяMap,две карты имеют одинаковый размер, и
для каждой пары
(key, value)в этой карте,other.get(key) == Some(value).
Реализация equals проверяет метод canEqual, поэтому подклассы Map могут сузить равенство до конкретных типов карт. Реализации Map в стандартной библиотеке могут сравниваться, их методы canEqual возвращают true.
Примечание: метод equals соблюдает законы равенства (симметричность, транзитивность) только если две карты используют одну и ту же функцию эквивалентности ключей в своей операции поиска. Например, операция эквивалентности ключей в scala.collection.immutable.TreeMap определяется ее порядком. Сравнение TreeMap с HashMap приводит к неожиданным результатам, если ordering.equiv(k1, k2) (используемая для поиска в TreeMap ) отличается от k1 == k2 (используемая для поиска в HashMap).
scala> import scala.collection.immutable._
scala> val ord: Ordering[String] = _ compareToIgnoreCase _
scala> TreeMap("A" -> 1)(ord) == HashMap("a" -> 1)
val res0: Boolean = false
scala> HashMap("a" -> 1) == TreeMap("A" -> 1)(ord)
val res1: Boolean = true
| Value parameters |
|
|---|---|
| Returns |
|
| Definition Classes | Map -> Equals -> Any |
| Inherited from | Map |
Source
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
| Value parameters |
|
|---|---|
| Returns | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые удовлетворяют заданному предикату |
| Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Inherited from | StrictOptimizedIterableOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Value parameters |
|
|---|---|
| Returns | новая итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Inherited from | StrictOptimizedIterableOps |
Source
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Value parameters |
|
|---|---|
| Returns | значение Option, содержащее первый элемент в коллекции, удовлетворяющий |
| Inherited from | IterableOnceOps |
Source
override def flatMap[B](f: ((K, V)) => IterableOnce[B]): CC[B]
Строит новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции и используя элементы получившихся коллекций.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип результирующей коллекции определяется статическим типом итерируемой коллекции. Это может иногда привести к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap ((word: String) => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | новая итерируемая коллекция, полученная из применения заданной функции, принимающей значения коллекций |
| Definition Classes | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Inherited from | StrictOptimizedIterableOps |
Source
def flatMap[K2, V2](f: ((K, V)) => IterableOnce[(K2, V2)]): CC[K2, V2]
Строит новую карту, применяя функцию ко всем элементам этой карты и используя элементы получившихся коллекций.
| Value parameters |
|
|---|---|
| Returns | новая карта, полученная из применения заданной функции, принимающей значения коллекций |
| Inherited from | MapOps |
Source
override def flatten[B](implicit toIterableOnce: ((K, V)) => IterableOnce[B]): CC[B]
Преобразует эту итерируемую коллекцию коллекций в итерируемую коллекцию, образованную элементами этих коллекций.
Тип результирующей коллекции определяется типом итерируемой коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новую итерируемую коллекцию, полученную в результате конкатенации всех итерируемых коллекций элементов. |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
def fold[A1 >: (K, V)](z: A1)(op: (A1, A1) => A1): A1
Складывает элементы этой коллекции с использованием указанного ассоциативного бинарного оператора. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективного порядка обхода.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат применения оператора складывания |
| Унаследовано от | IterableOnceOps |
Источник
def foldLeft[B](z: B)(op: (B, (K, V)) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
def foldRight[B](z: B)(op: ((K, V), B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению, двигаясь справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
def foreachEntry[U](f: (K, V) => U): Unit
Применяет f к каждой паре ключ/значение для своих побочных эффектов Примечание: параметр [U] необходим для помощи в выводе типов scalac.
| Унаследовано от | MapOps |
|---|
Источник
override protected def fromSpecific(coll: IterableOnce[(K, V)]): CC[K, V]
Определяет, как преобразовать заданную Iterable[A] в коллекцию типа C.
Этот процесс может быть выполнен жёстким или нежёстким способом (т.е. без оценки элементов результирующих коллекций). Другими словами, этот метод определяет модель оценки коллекции.
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как свидетельствует аннотация |
|---|---|
| Определяющие классы | MapFactoryDefaults -> IterableOps |
| Унаследовано от | MapFactoryDefaults |
Источник
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает |
Карту из ключей в итерируемые коллекции, в которой выполняется следующее инвариантное свойство: (xs groupBy f)(k) = xs filter (x => f(x) == k) То есть каждый ключ |
| Унаследовано от | IterableOps |
Источник
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором key. Каждый элемент в группе преобразуется в значение типа B с использованием функции value.
Это эквивалентно groupBy(key).mapValues(_.map(f)), но более эффективно.
case class User(name: String, age: Int) def namesByAge(users: Seq[User]): Map[Int, Seq[String]] = users.groupMap(_.age)(_.name)
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Унаследовано от | IterableOps |
Источник
def groupMapReduce[K, B](key: ((K, V)) => K)(f: ((K, V)) => B)(reduce: (B, B) => B): Map[K, B]
Разделяет эту итерируемую коллекцию на карту в соответствии с функцией-дискриминатором key. Все значения, имеющие одинаковый дискриминатор, затем преобразуются функцией f и затем сводятся к одному значению с использованием функции reduce.
Это эквивалентно groupBy(key).mapValues(_.map(f).reduce(reduce)), но более эффективно.
def occurrences[A](as: Seq[A]): Map[A, Int] = as.groupMapReduce(identity)(_ => 1)(_ + _)
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Унаследовано от | IterableOps |
|---|
Source
Разделяет элементы на итерируемые коллекции фиксированного размера.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Унаследовано от | IterableOps |
Source
def head: A
Выбирает первый элемент этой итерируемой коллекции.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | первый элемент этой итерируемой коллекции. |
|---|---|
| Выбрасывает |
|
| Унаследовано от | IterableOps |
Source
def headOption: Option[A]
Выбирает первый элемент, если он есть.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | первый элемент этой итерируемой коллекции, если она не пуста, |
|---|---|
| Унаследовано от | IterableOps |
Source
def init: C
Часть коллекции без последнего элемента.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Унаследовано от | IterableOps |
|---|
Source
Перебирает начальные части этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатом последовательных применений init.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | итератор по всем начальным частям этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Source
def isDefinedAt(key: K): Boolean
Проверяет, содержит ли эта карта привязку для ключа. Этот метод, который реализует абстрактный метод тракта PartialFunction, эквивалентен contains.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | MapOps |
Source
override def isTraversableAgain: Boolean
Проверяет, можно ли многократно пройтись по этой итерируемой коллекции. Всегда true для Iterables и false для Iterators, если не переопределено.
| Возвращает |
|
|---|---|
| Определения классов | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Source
Компаньон-объект этой неизменяемой коллекции, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Определения классов | Iterable -> Iterable -> IterableOps |
| Унаследовано от | Iterable |
Source
Собирает все ключи этой карты в множество.
| Возвращает | множество, содержащее все ключи этой карты. |
|---|---|
| Определения классов | MapOps -> MapOps |
| Унаследовано от | MapOps |
Source
Возвращает Stepper для ключей этой карты. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Source
Собирает все ключи этой карты в итерируемую коллекцию.
| Возвращает | ключи этой карты в виде итерируемой коллекции. |
|---|---|
| Унаследовано от | MapOps |
Source
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | Последний элемент этой итерируемой коллекции. |
|---|---|
| Выбрасывает |
|
| Унаследовано от | IterableOps |
Source
def lastOption: Option[A]
Выбирает последний элемент, если он есть.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | последний элемент этой итерируемой коллекции, если она не пуста, |
|---|---|
| Унаследовано от | IterableOps |
Source
Аналогично zip с той разницей, что элементы каждой коллекции не потребляются до тех пор, пока на возвращенном LazyZip2 декораторе не будет вызвано строгое действие.
Вызовы lazyZip могут быть объединены для поддержки более высоких арностей (до 4) без расходов на построение и деконструирование промежуточных кортежей.
val xs = List(1, 2, 3) val res = (xs lazyZip xs lazyZip xs lazyZip xs).map((a, b, c, d) => a + b + c + d) // res == List(4, 8, 12)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | декоратор |
| Унаследовано от | Iterable |
Source
Преобразует эту частичную функцию в обычную функцию, возвращающую Option результат.
| Возвращает | функцию, которая принимает аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Исходный код
override def map[B](f: ((K, V)) => B): CC[B]
Создаёт новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения заданной функции |
| Классы-определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
def map[K2, V2](f: ((K, V)) => (K2, V2)): CC[K2, V2]
Создаёт новую карту, применяя функцию ко всем элементам этой карты.
| Параметры |
|
|---|---|
| Возвращает | новая карта, полученная путём применения заданной функции |
| Унаследовано от | MapOps |
Исходный код
Компаньон-объект этой карты, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Классы-определения | Map -> Map -> MapOps |
| Унаследовано от | Map |
Исходный код
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | наибольший элемент этой коллекции относительно упорядочения |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно упорядочения |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа Option, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f, с учётом порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наибольший элемент.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа Option, содержащее наибольший элемент этой коллекции с учётом порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этой коллекции с учётом порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наименьшим значением, измеренным функцией f, с учётом порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа Option, содержащее первый элемент этой коллекции с наименьшим значением, измеренным функцией f, с учётом порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Значение типа option, содержащее наименьший элемент этой коллекции относительно заданного порядка |
| Унаследовано от | IterableOnceOps |
Source
Выводит все элементы этой коллекции в строку.
Делегирует вызов методу addString, который может быть переопределен.
| Возвращает | Строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Выводит все элементы этой коллекции в строку с использованием разделительной строки.
Делегирует вызов методу addString, который может быть переопределен.
| Параметры значения |
|
|---|---|
| Возвращает | Строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Выводит все элементы этой коллекции в строку с использованием начальной, конечной и разделительной строк.
Делегирует вызов методу addString, который может быть переопределен.
| Параметры значения |
|
|---|---|
| Возвращает | Строковое представление этой коллекции. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
override protected def newSpecificBuilder: Builder[(K, V), CC[K, V]]
| Возвращает | Строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, scala.collection.View или scala.collection.immutable.LazyList), реализовать этот метод возможно, но полученный |
|---|---|
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как видно из аннотации |
| Классы определений | MapFactoryDefaults -> IterableOps |
| Унаследовано от | MapFactoryDefaults |
Source
Проверяет, не пуста ли коллекция.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Комбинирует эту частичную функцию с резервной частичной функцией, которая применяется там, где эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, область определения которой является объединением областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Source
Пара, состоящая из, во-первых, всех элементов, удовлетворяющих предикату p, и, во-вторых, всех элементов, которые не удовлетворяют. Интересно тем, что разделяет коллекцию на две части.
Стандартная реализация, предоставленная здесь, требует два прохода по коллекции. Строгие коллекции имеют переопределённую версию partition в StrictOptimizedIterableOps, которая требует только одного прохода.
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
override def partitionMap[A1, A2](f: ((K, V)) => Either[A1, A2]): (CC[A1], CC[A2])
Применяет функцию f к каждому элементу итерабельной коллекции и возвращает пару итерабельных коллекций: первая из которых состоит из тех значений, возвращённых f которые были обернуты в scala.util.Left, а вторая — из тех, которые были обернуты в scala.util.Right.
Пример:
val xs = Iterable(1, "one", 2, "two", 3, "three") partitionMap {
case i: Int => Left(i)
case s: String => Right(s)
}
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пара итерабельных коллекций: первая из которых состоит из тех значений, возвращённых |
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
Умножает элементы этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | произведение всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Источник
def reduce[B >: (K, V)](op: (B, B) => B): B
Сводит элементы этой коллекции с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | Результат применения оператора reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceLeft[B >: (K, V)](op: (B, (K, V)) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен, или оператор не ассоциативен и не коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceLeftOption[B >: (K, V)](op: (B, (K, V)) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен, или оператор не ассоциативен и не коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | вариант значения, содержащий результат |
| Унаследовано от | IterableOnceOps |
Источник
def reduceOption[B >: (K, V)](op: (B, B) => B): Option[B]
Сводит элементы этой коллекции, если таковые имеются, с помощью указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | Вариант значения, содержащий результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Источник
def reduceRight[B >: (K, V)](op: ((K, V), B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен, или оператор не ассоциативен и не коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceRightOption[B >: (K, V)](op: ((K, V), B) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен, или оператор не ассоциативен и не коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | вариант значения, содержащий результат |
| Унаследовано от | IterableOnceOps |
Источник
def removedAll(keys: IterableOnce[K]): C
Создаёт новую неизменяемую карту из этой неизменяемой карты, удаляя все элементы другой коллекции.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Параметры значений |
|
|---|---|
| Возвращает | новая неизменяемая карта, которая содержит все элементы текущей неизменяемой карты, за исключением одного меньшего вхождения каждого из элементов |
| Унаследовано от | MapOps |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Компонует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализуется через applyOrElse и, следовательно, потенциально более эффективна. Использование runWith позволяет избежать двойного вычисления совпадений шаблонов и условий для частичных функций-литералов.
| Параметры значений |
|
|---|---|
| Возвращает | функция, которая отображает аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Источник
def scan[B >: (K, V)](z: B)(op: (B, B) => B): CC[B]
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий префиксное сканирование элементов в этом итерируемом наборе |
| Унаследовано от | IterableOps |
Источник
override def scanLeft[B](z: B)(op: (B, (K, V)) => B): CC[B]
Создаёт итерируемый набор, содержащий кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базового набора не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | набор с промежуточными результатами |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
def scanRight[B](z: B)(op: ((K, V), B) => B): CC[B]
Создаёт набор, содержащий кумулятивные результаты применения оператора справа налево. Головка набора — последний кумулятивный результат.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базового набора не упорядочен.
Примечание: даже при применении к представлению или ленивому набору, элементы всегда будут принудительно вычислены.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | набор с промежуточными результатами |
| Унаследовано от | IterableOps |
Источник
Сравнивает размер этого итерируемого набора с размером другого Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Реализация метода не вызывает |
| Унаследовано от | IterableOps |
Источник
Сравнивает размер этого итерируемого набора со значением теста.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Реализация метода не вызывает |
| См. также | |
| Унаследовано от | IterableOps |
Источник
final def sizeIs: SizeCompareOps
Возвращает значение класса, содержащее операции для сравнения размера этого итерируемого набора со значением теста.
Эти операции реализованы с помощью sizeCompare(Int) и позволяют использовать более удобочитаемые выражения:
this.sizeIs < size // this.sizeCompare(size) < 0 this.sizeIs <= size // this.sizeCompare(size) <= 0 this.sizeIs == size // this.sizeCompare(size) == 0 this.sizeIs != size // this.sizeCompare(size) != 0 this.sizeIs >= size // this.sizeCompare(size) >= 0 this.sizeIs > size // this.sizeCompare(size) > 0
| Унаследовано от | IterableOps |
|---|
Источник
Выбирает интервал элементов. Возвращаемый итерируемый набор состоит из всех элементов x, которые удовлетворяют условию:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты для разных запусков, если только тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемый набор, содержащий элементы, большие или равные индексу |
| Унаследовано от | IterableOps |
Источник
Группирует элементы в блоки фиксированного размера, передавая "скользящее окно" по ним (в отличие от разбиения на части, как это делается в grouped.)
Возвращаемый итератор будет пустым при вызове на пустом наборе. Последний элемент, который генерирует итератор, может быть меньше размера окна, если исходный набор не исчерпан окном до него, и его последний элемент не пропущен шагом перед ним.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Группирует элементы в блоки фиксированного размера, передавая "скользящее окно" по ним (в отличие от разбиения на части, как это делается в grouped.)
Пустой набор возвращает пустой итератор, а непустой набор, содержащий меньше элементов, чем размер окна, возвращает итератор, который будет генерировать исходный набор в качестве единственного элемента.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Разбивает этот итерируемый набор на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | пара, состоящая из самого длинного префикса этой итерируемой коллекции, элементы которой удовлетворяют |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | пара итерируемых коллекций, состоящая из первых |
| Определяющие классы | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Исходный код
Возвращает scala.collection.Stepper для элементов этой коллекции.
Stepper позволяет создавать Java-поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться в качестве итератора, который не упаковывает элементы.
Неявный параметр scala.collection.StepperShape определяет тип возвращаемого Stepper в соответствии с типом элементов этой коллекции.
Для коллекций
Int,Short,ByteилиChar, возвращается scala.collection.IntStepperДля коллекций
DoubleилиFloat, возвращается scala.collection.DoubleStepperДля коллекций
Long, возвращается scala.collection.LongStepperДля любого другого типа элементов возвращается scala.collection.AnyStepper
Обратите внимание, что этот метод переопределяется в подклассах, а тип возвращаемого значения уточняется до S with EfficientSplit, например, scala.collection.IndexedSeqOps.stepper. Для Stepper, помеченных как scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Stepper можно преобразовать только в последовательные потоки.
| Унаследовано от | IterableOnce |
|---|
Исходный код
Суммирует элементы этой коллекции.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | сумма всех элементов этой коллекции по отношению к оператору |
| Унаследовано от | IterableOnceOps |
Исходный код
def tail: C
Остальная часть коллекции без первого элемента.
| Унаследовано от | IterableOps |
|---|
Исходный код
Итерируется по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, промежуточные значения — результаты последовательных применений tail.
| Возвращаемое значение | итератор по всем хвостам этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | итерируемая коллекция, содержащая только первые |
| Унаследовано от | IterableOps |
Исходный код
Коллекция, содержащая последние n элементов этой коллекции.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Берет самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | самый длинный префикс этой итерируемой коллекции, элементы которой удовлетворяют предикату |
| Унаследовано от | IterableOps |
Исходный код
override def tapEach[U](f: ((K, V)) => U): C
Применяет функцию побочного эффекта к каждому элементу в этой коллекции. Строгие коллекции немедленно применяют f к своим элементам, в то время как ленивые коллекции, такие как представления и LazyList, применяют f к каждому элементу только тогда, когда он вычисляется, и каждый раз, когда элемент вычисляется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | Такая же логическая коллекция, как и эта |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Используя фабрику коллекций factory, преобразуйте эту коллекцию в соответствующее представление для текущего типа элементов A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
Преобразовать коллекцию в массив.
Примечание к реализации: НЕ вызывайте Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
def toIndexedSeq: IndexedSeq[A]
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Классы-предки | Map -> IterableOnceOps |
|---|---|
| Унаследовано от | Map |
Источник
| Возвращает | Данную коллекцию в виде |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Возвращает строковое представление объекта.
Представление по умолчанию зависит от платформы.
| Возвращает | строковое представление объекта. |
|---|---|
| Классы-предки | Map -> Function1 -> Iterable -> Any |
| Унаследовано от | Map |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Транспонирует эту итерируемую коллекцию итерируемых коллекций в итерируемую коллекцию итерируемых коллекций.
Тип результирующей коллекции будет определяться статическим типом итерируемой коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | двухмерная итерируемая коллекция итерируемых коллекций, где n-я строка — это n-й столбец этой итерируемой коллекции. |
| Исключения |
|
| Унаследовано от | IterableOps |
Источник
Пытается извлечь B из A в выражении сопоставления с образцом.
| Унаследовано от | PartialFunction |
|---|
Источник
override def unzip[A1, A2](implicit asPair: ((K, V)) => (A1, A2)): (CC[A1], CC[A2])
Преобразует эту итерируемую коллекцию пар в две коллекции первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пара итерируемых коллекций, содержащая первую, соответственно вторую половину каждой пары элементов этой итерируемой коллекции. |
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
override def unzip3[A1, A2, A3](implicit asTriple: ((K, V)) => (A1, A2, A3)): (CC[A1], CC[A2], CC[A3])
Преобразует эту итерируемую коллекцию троек в три коллекции первого, второго и третьего элемента каждой тройки.
val xs = Iterable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three),
// Iterable(1, 2, 3))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | тройка итерируемых коллекций, содержащая первый, второй, соответственно третий член каждой тройки элементов этой итерируемой коллекции. |
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Обновить отображение для указанного ключа и его текущего необязательно сопоставленного значения (Some если есть текущее отображение, None если нет).
Если функция переопределения возвращает Some(v), отображение обновляется новым значением v. Если функция переопределения возвращает None, отображение удаляется (или остается отсутствующим, если оно изначально отсутствовало). Если сама функция выбросит исключение, исключение перебрасывается, а текущее отображение остается без изменений.
| Параметры значения |
|
|---|---|
| Возвращает | Новый словарь с обновленным отображением ключа |
| Унаследовано от | MapOps |
Источник
Возвращает Stepper для значений этого словаря. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Источник
Собирает все значения этого словаря в итерируемой коллекции.
| Возвращает | значения этого отображения в виде итерируемого объекта. |
|---|---|
| Унаследовано от | MapOps |
Исходный код
Представление элементов этого набора.
| Классы-предки | MapOps -> IterableOps |
|---|---|
| Унаследовано от | MapOps |
Исходный код
def withDefault[V1 >: V](d: K => V1): Map[K, V1]
То же отображение с заданной функцией по умолчанию. Примечание: значение по умолчанию используется только для apply. Другие методы, такие как get, contains, iterator, keys, и т. д., не затрагиваются withDefault.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
| Параметры значения |
|
|---|---|
| Возвращает | обёртку отображения со значением по умолчанию |
| Унаследовано от | Map |
Исходный код
def withDefaultValue[V1 >: V](d: V1): Map[K, V1]
То же отображение со заданным значением по умолчанию. Примечание: значение по умолчанию используется только для apply. Другие методы, такие как get, contains, iterator, keys, и т. д., не затрагиваются withDefaultValue.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
| Параметры значения |
|
|---|---|
| Возвращает | обёртку отображения со значением по умолчанию |
| Унаследовано от | Map |
Исходный код
Создаёт нестрогое фильтрование этого отображения.
Примечание: различие между c filter p и c withFilter p заключается в том, что первый создаёт новую коллекцию, а второй лишь ограничивает область применения последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции не является упорядоченным.
| Параметры значения |
|
|---|---|
| Возвращает | объект класса |
| Классы-предки | MapFactoryDefaults -> IterableOps |
| Унаследовано от | MapFactoryDefaults |
Исходный код
override def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемую коллекцию, образованную из этой итерируемой коллекции и другой итерируемой коллекции путём объединения соответствующих элементов в пары. Если одна из двух коллекций длиннее другой, её оставшиеся элементы игнорируются.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, содержащая пары, состоящие из соответствующих элементов этой итерируемой коллекции и |
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Возвращает итерируемую коллекцию, образованную из этой итерируемой коллекции и другой итерируемой коллекции путём объединения соответствующих элементов в пары. Если одна из двух коллекций короче другой, для расширения более короткой коллекции до длины более длинной используются плейсхолдеры.
| Параметры значения |
|
|---|---|
| Возвращает | новая коллекция типа Если эта итерируемая коллекция короче Если |
| Унаследовано от | IterableOps |
Исходный код
override def zipWithIndex: CC[(A, Int)]
Объединяет эту итерируемую коллекцию со своими индексами.
| Возвращает | новая итерируемая коллекция, содержащая пары, состоящие из всех элементов этой итерируемой коллекции, соединённых со своими индексами. Индексы начинаются с |
|---|---|
| Пример | |
| Классы-предки | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/collection/immutable/Map$$Map2.html