Класс LongMap.LongMap
final class LongMap[V] extends AbstractMap[Long, V] with MapOps[Long, V, Map, LongMap[V]] with StrictOptimizedIterableOps[(Long, V), Iterable, LongMap[V]] with Serializable
Этот класс реализует изменяемые отображения с ключами Long на основе хеш-таблицы с открытым адресованием.
Основные операции отображения над отдельными элементами, включая contains и get, обычно значительно быстрее с LongMap по сравнению с HashMap. Методы, которые действуют над всем отображением, включая foreach и map, как правило, не ожидаются быстрее, чем с общим отображением, за исключением тех, которые используют внутреннюю структуру отображения: foreachKey, foreachValue, mapValuesNow, и transformValues.
Отображения с открытым адресованием могут стать менее эффективными при поиске после многократного добавления/удаления элементов. Хотя LongMap делает неплохую попытку оставаться эффективным независимо от этого, вызов repack для отображения, из которого больше не будут удаляться элементы, но который будет активно использоваться, может сэкономить как время, так и место в памяти.
Это отображение не предназначено для хранения более чем 229 элементов (примерно 500 миллионов). Максимальная ёмкость составляет 230, но производительность резко ухудшится, когда приблизится к 2^30.
| Суперобъекты | 28 типов |
|---|
Конструкторы
Исходный код
def this()
Исходный код
Создает новое LongMap, которое возвращает значения по умолчанию в соответствии с заданным соответствием ключ-значение.
Исходный код
Создает новое LongMap с начальным буфером заданного размера.
LongMap, как правило, может содержать вдвое меньше элементов, чем размер буфера, прежде чем потребуется изменение размера.
Исходный код
Создает новое LongMap с заданными значениями по умолчанию и начальным размером буфера.
Конкретные методы
Исходный код
Псевдоним для concat
| Классы-определения | MapOps |
|---|
Исходный код
Добавляет новую пару ключ/значение в это отображение и возвращает отображение.
Исходный код
Добавляет один элемент в это изменяемое отображение.
| Параметры значений |
|
|---|---|
| Возвращает | само изменяемое отображение |
| Классы-определения | Growable |
Исходный код
Возвращает значение, связанное с ключом. Если ключ не существует в отображении, то вместо этого возвращается значение defaultEntry для этого ключа.
| Классы-определения | MapOps -> Function1 |
|---|
Исходный код
Создает копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
| Возвращает | копия объекта-получателя. |
|---|---|
| Примечание | не определено SLS как член AnyRef |
| Классы-определения | MapOps -> Cloneable -> Object |
Исходный код
Исходный код
Возвращает новое изменяемое отображение, содержащее элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов изменяемого отображения — это наиболее общий суперкласс, охватывающий типы элементов двух операндов.
| Параметры значений |
|
|---|---|
| Возвращает | новое изменяемое отображение, которое содержит все элементы этого изменяемого отображения, за которыми следуют все элементы |
| Классы-определения | MapOps |
Исходный код
Проверяет, содержит ли это отображение привязку для ключа.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Определяющие классы | MapOps |
Источник
Значение по умолчанию для ключа, заданное пользователем. Бросает исключение, если другое поведение по умолчанию не было указано.
| Определяющие классы | MapOps |
|---|
Источник
Пустой итерируемый объект того же типа, что и этот итерируемый объект
| Возвращает | пустой итерируемый объект типа |
|---|---|
| Определяющие классы | MapFactoryDefaults -> IterableFactoryDefaults -> IterableOps |
Источник
Источник
Применить f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
| Определяющие классы | IterableOnceOps |
|---|
Источник
Применить f к каждой паре ключ/значение для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
| Определяющие классы | MapOps |
|---|
Источник
Применяет функцию ко всем ключам этой карты.
Источник
def foreachValue[A](f: V => A): Unit
Применяет функцию ко всем значениям этой карты.
Источник
Возвращает значение, связанное с ключом (по желанию).
| Параметры значения |
|
|---|---|
| Возвращает | значение-опция, содержащая значение, связанное с |
| Определяющие классы | MapOps |
Источник
Возвращает значение, связанное с ключом, или значение по умолчанию, если ключ не содержится в отображении.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение, связанное с |
| Определяющие классы | MapOps |
Источник
override def getOrElseUpdate(key: Long, defaultValue: => V): V
Если заданный ключ уже есть в этой карте, возвращает связанное значение.
В противном случае вычисляет значение из заданного выражения op, сохраняет его с ключом в карте и возвращает это значение.
Реализации конкурирующих отображений могут вычислять выражение op несколько раз или могут вычислять op без вставки результата.
| Параметры значения |
|
|---|---|
| Возвращает | значение, связанное с ключом (либо ранее, либо в результате выполнения метода). |
| Определяющие классы | MapOps |
Источник
Возвращает значение, связанное с ключом, или значение по умолчанию для этого типа, если оно не существует (null для AnyRef, 0 для чисел с плавающей точкой и целых чисел).
Примечание: это самый быстрый способ получить значение, которое может или не может существовать, если значение по умолчанию null/ноль приемлемо. Для пар ключ/значение, которые существуют, apply (т. е. map(key)) так же быстро.
Источник
Проверяет, пуста ли изменяемая карта.
Примечание: Реализации в подклассах, которые не являются итерируемыми повторно, должны позаботиться о том, чтобы не потреблять элементы при вызове isEmpty.
| Возвращает |
|
|---|---|
| Определяющие классы | IterableOnceOps |
Источник
Итератор может быть использован только один раз
Источник
Создает итератор для всех ключей.
| Возвращает | итератор по всем ключам. |
|---|---|
| Определяющие классы | MapOps |
Источник
| Возвращает | Количество элементов в создаваемой коллекции, если оно может быть вычислено без особых затрат, иначе -1. Реализация по умолчанию всегда возвращает -1. |
|---|---|
| Определяющие классы | MapOps -> Growable -> IterableOnce |
Источник
Источник
def mapValuesNow[V1](f: V => V1): LongMap[V1]
Создает новую LongMap с разными значениями. В отличие от mapValues, этот метод сразу же генерирует новую коллекцию.
Источник
Добавляет новую пару ключ/значение в это отображение и (по желанию) возвращает ранее связанное значение. Если в отображении уже есть отображение для ключа, оно будет перезаписано новым значением.
| Параметры значения |
|
|---|---|
| Возвращает | значение параметра, содержащее значение, связанное с ключом до выполнения операции |
| Определяющие классы | MapOps |
Источник
Переупаковывает содержимое этой LongMap для максимальной эффективности поиска.
Для карт, которые проходят сложный процесс создания с добавлением и удалением ключей, а затем активно используются без дальнейшего удаления элементов, вызов repack после завершения создания может привести к улучшению производительности. Переупаковка занимает время, пропорциональное количеству записей в карте.
Источник
Размер этой изменяемой карты.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Возвращает | количество элементов в этой изменяемой карте. |
|---|---|
| Определяющие классы | IterableOnceOps |
Источник
Удаляет один элемент из этой изменяемой карты.
| Параметры значения |
|
|---|---|
| Возвращает | сама изменяемая карта |
Источник
def transformValuesInPlace(f: V => V): LongMap.this.type
Применяет функцию преобразования ко всем значениям, хранящимся в этой карте. Примечание: значение по умолчанию, если таковое имеется, не преобразуется.
Источник
Обновляет карту, включив новую пару ключ-значение.
Это самый быстрый способ добавить запись в LongMap.
| Определяющие классы | MapOps |
|---|
Источник
override def valuesIterator: Iterator[V]
Создает итератор для всех значений в этой карте.
| Возвращает | итератор по всем значениям, которые связаны с некоторым ключом в этой карте. |
|---|---|
| Определяющие классы | MapOps |
Наследованные методы
Источник
Псевдоним для concat
| Унаследовано от | IterableOps |
|---|
Источник
Псевдоним для addAll
| Унаследовано от | Growable |
|---|
Источник
Псевдоним для addOne
| Унаследовано от | Growable |
|---|
Источник
Псевдоним для subtractAll
| Унаследовано от | Shrinkable |
|---|
Источник
Псевдоним для subtractOne
| Унаследовано от | Shrinkable |
|---|
Источник
Добавляет все элементы, полученные от IterableOnce, в эту коллекцию, которая может расти.
| Параметры значения |
|
|---|---|
| Возвращает | сама коллекция, которая может расти. |
| Унаследовано от | Growable |
Источник
Добавляет все элементы этой коллекции в строковый буфер. Записанный текст состоит из строковых представлений (с помощью метода 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 |
Источник
Добавляет все элементы этой коллекции в строковый буфер с использованием разделителя. Записанный текст состоит из строковых представлений (с помощью метода 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 |
Источник
Добавляет все элементы этой карты в строковый буфер с использованием начальной, конечной и разделительной строк. Записанный текст начинается со строки 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 |
Источник
Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
override def andThen[C](k: V => C): PartialFunction[A, C]
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип функции в момент выполнения является PartialFunction, то используется другой метод andThen (обратите внимание на предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, возможно суженной указанной функцией, которая отображает аргументы |
| Классы определения | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Источник
override def applyOrElse[K1 <: Long, 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 |
Источник
Очищает содержимое этого билдера. После выполнения этого метода билдер не будет содержать элементов.
| Унаследовано от | MapOps |
|---|
Источник
Создаёт новую итерабельную коллекцию, применяя частичную функцию ко всем элементам этой итерабельной коллекции, для которых она определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерабельная коллекция, полученная путём применения заданной частичной функции |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Создаёт новую коллекцию, применяя частичную функцию ко всем элементам этой карты, для которых она определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая карта, полученная путём применения заданной частичной функции |
| Унаследовано от | MapOps |
Источник
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для бесконечно больших коллекций.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее pf, применённое к первому значению, для которого оно определено, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Компонует другую частичную функцию k с этой частичной функцией, так что эта частичная функция применяется к результатам k.
Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения другой частичной функции, суженной этой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Source
Компонует два экземпляра Function1 в новый Function1, применяя этот функцию последним.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Source
Возвращает новую итерабельную коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов итерабельной коллекции — это самый специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерабельная коллекция, которая содержит все элементы этой итерабельной коллекции, за которыми следуют все элементы |
| Унаследовано от | IterableOps |
Source
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет данный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование завершается, когда скопированы все элементы этой коллекции, или достигнут конец массива, или скопировано len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Source
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет данный массив xs начиная с индекса start значениями этой коллекции.
Копирование завершается, когда скопированы все элементы этой коллекции, или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Source
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет данный массив xs начиная с индекса start значениями этой коллекции.
Копирование завершается, когда скопированы все элементы этой коллекции, или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя предикату проверки.
Примечание: не будет завершаться для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
Подсчитывает количество элементов в наборе, удовлетворяющих предикату.
Примечание: не будет завершаться для наборов бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Source
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме первых |
| Унаследовано от | IterableOps |
Source
Остальная часть набора без его n последних элементов. Для линейных, неизменяемых наборов это должно предотвратить создание копии.
Примечание: даже при применении к представлению или ленивому набору элементы будут всегда принудительно вычисляться.
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
Удаляет наибольший префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | наибольший суффикс этого итерируемого набора, первый элемент которого не удовлетворяет предикату |
| Унаследовано от | IterableOps |
Источник
def elementWise: ElementWiseExtractor[A, B]
Возвращает объект-экстрактор с методом unapplySeq, который извлекает каждый элемент данных последовательности.
| Пример |
val firstChar: String => Option[Char] = _.headOption
Seq("foo", "bar", "baz") match {
case firstChar.unlift.elementWise(c0, c1, c2) =>
println(s"$c0, $c1, $c2") // Output: f, b, b
}
|
|---|---|
| Унаследовано от | PartialFunction |
Источник
Равенство карт реализовано с использованием метода поиска get. Этот метод возвращает true если
аргумент
oявляетсяMap,две карты имеют одинаковый размер size, и
для каждой пары
(key, value)в этой карте,other.get(key) == Some(value).
Реализация equals проверяет метод canEqual, поэтому подклассы Map могут сузить равенство до определённых типов карт. Реализации Map в стандартной библиотеке могут сравниваться, их методы canEqual возвращают true.
Примечание: метод equals соблюдает законы равенства (симметрия, транзитивность) только если две карты используют одну и ту же функцию эквивалентности ключей в операции поиска. Например, операция эквивалентности ключей в scala.collection.immutable.TreeMap определяется её упорядочением. Сравнение TreeMap с HashMap приводит к непредсказуемым результатам, если ordering.equiv(k1, k2) (используемая для поиска в TreeMap ) отличается от k1 == k2 (используемая для поиска в HashMap).
scala> import scala.collection.immutable._
scala> val ord: Ordering[String] = _ compareToIgnoreCase _
scala> TreeMap("A" -> 1)(ord) == HashMap("a" -> 1)
val res0: Boolean = false
scala> HashMap("a" -> 1) == TreeMap("A" -> 1)(ord)
val res1: Boolean = true
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Классы определения | Map -> Equals -> Any |
| Унаследовано от | Map |
Источник
Проверяет, выполняется ли предикат для хотя бы одного элемента этого набора.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые удовлетворяют заданному предикату |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Сохраняет только те сопоставления, для которых предикат p возвращает true.
| Параметры значения |
|
|---|---|
| Унаследовано от | MapOps |
Источник
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее первый элемент в коллекции, который удовлетворяет |
| Унаследовано от | IterableOnceOps |
Исходный код
Создает новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции и используя элементы полученных коллекций.
Например:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путем применения заданной функции, возвращающей коллекцию |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Создает новую карту, применяя функцию ко всем элементам этой карты и используя элементы полученных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает | новая карта, полученная путем применения заданной функции, возвращающей коллекцию |
| Унаследовано от | MapOps |
Исходный код
Преобразует эту итерируемую коллекцию коллекций перебираемых объектов в итерируемую коллекцию, образованную элементами этих коллекций перебираемых объектов.
Тип результирующей коллекции будет определяться типом итерируемой коллекции. Например:
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 |
Источник
Вычисляет результат элементов этого набора с использованием указанного ассоциативного бинарного оператора. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективного порядка обхода.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат применения оператора сворачивания |
| Унаследовано от | IterableOnceOps |
Источник
Применяет бинарный оператор к начальному значению и всем элементам этого набора слева направо.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен или оператор не ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
Применяет бинарный оператор ко всем элементам этого набора и начальному значению, справа налево.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершиться для наборов бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Разделяет этот итерируемый набор на карту итерируемых наборов в соответствии с некоторой функцией-дискриминатором.
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает |
карта из ключей к итерируемым наборам, для которых выполняется следующее инвариантное условие: (xs groupBy f)(k) = xs filter (x => f(x) == k) То есть, каждый ключ |
| Унаследовано от | IterableOps |
Источник
Разделяет этот итерируемый набор на карту итерируемых наборов в соответствии с функцией-дискриминатором key. Каждый элемент в группе преобразуется в значение типа B с помощью функции value.
Эквивалентно groupBy(key).mapValues(_.map(f)), но более эффективно.
case class User(name: String, age: Int) def namesByAge(users: Seq[User]): Map[Int, Seq[String]] = users.groupMap(_.age)(_.name)
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Унаследовано от | IterableOps |
Источник
def groupMapReduce[K, B](key: ((Long, V)) => K)(f: ((Long, V)) => B)(reduce: (B, B) => B): Map[K, B]
Разделяет этот итерируемый набор на карту в соответствии с функцией-дискриминатором key. Все значения, имеющие одинаковый дискриминатор, затем преобразуются функцией f и затем сводятся к одному значению с помощью функции reduce.
Эквивалентно groupBy(key).mapValues(_.map(f).reduce(reduce)), но более эффективно.
def occurrences[A](as: Seq[A]): Map[A, Int] = as.groupMapReduce(identity)(_ => 1)(_ + _)
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.
| Унаследовано от | IterableOps |
|---|
Источник
Разделяет элементы на итерируемые наборы фиксированного размера.
| Параметры значений |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые наборы размером |
| См. также | scala.collection.Iterator, метод |
| Унаследовано от | IterableOps |
Источник
Вычисляет хэш-код объекта.
Базовый алгоритм хеширования зависит от платформы.
Обратите внимание, что двум объектам разрешено иметь идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)) и при этом не быть равными (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true), у них были идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода убедитесь, что поведение согласуется с методом equals.
| Возвращает | значение хэш-кода для этого объекта. |
|---|---|
| Определяющие классы | Map -> Any |
| Унаследовано от | Map |
Источник
def head: A
Выбирает первый элемент этого итерируемого набора.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не является упорядоченным.
| Возвращает | первый элемент этого итерируемого набора. |
|---|---|
| Исключения |
|
| Унаследовано от | IterableOps |
Источник
def headOption: Option[A]
Возвращает необязательный первый элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не является упорядоченным.
| Возвращает | первый элемент этого итерируемого набора, если он не пустой, |
|---|---|
| Унаследовано от | IterableOps |
Источник
def init: C
Первая часть набора без последнего элемента.
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.
| Унаследовано от | IterableOps |
|---|
Источник
Итерирует по начальным частям этого итерируемого набора. Первое значение — это сам набор, а последнее — пустой набор. Промежуточные значения — результаты последовательных применений init.
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.
| Возвращает | итератор по всем начальным частям этого итерируемого набора |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Проверяет, содержит ли эта карта связывание для ключа. Этот метод, реализующий абстрактный метод тракта PartialFunction, эквивалентен contains.
| Параметры |
|
|---|---|
| Возвращает |
|
| Унаследовано от | MapOps |
Источник
override def isTraversableAgain: Boolean
Проверяет, может ли этот итерируемый набор быть повторно пройден. Всегда true для Iterables и false для Iterators, если не переопределено.
| Возвращает |
|
|---|---|
| Определяющие классы | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
Компаньон-объект этого итерируемого набора, предоставляющий различные методы создания.
| Примечание | При реализации пользовательского типа набора и уточнении |
|---|---|
| Определяющие классы | Iterable -> Iterable -> IterableOps |
| Унаследовано от | Iterable |
Источник
Собирает все ключи этой карты в набор.
| Возвращает | набор, содержащий все ключи этой карты. |
|---|---|
| Унаследовано от | MapOps |
Источник
Возвращает Stepper для ключей этой карты. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Источник
Собирает все ключи этой карты в итерируемый набор.
| Возвращает | ключи этой карты в виде итерируемого набора. |
|---|---|
| Унаследовано от | MapOps |
Источник
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не является упорядоченным.
| Возвращает | Последний элемент этого итерируемого набора. |
|---|---|
| Исключения |
|
| Унаследовано от | IterableOps |
Источник
def lastOption: Option[A]
Возвращает необязательный последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не является упорядоченным.
| Возвращает | последний элемент этого итерируемого набора, если он не пустой, |
|---|---|
| Унаследовано от | IterableOps |
Источник
Аналогично zip, за исключением того, что элементы каждого набора не потребляются до тех пор, пока над возвращаемым LazyZip2 декоратором не вызывается строгое действие.
Вызовы lazyZip могут быть объединены, чтобы поддерживать более высокие арности (до 4), не неся затрат на создание и деконструирование промежуточных кортежей.
val xs = List(1, 2, 3) val res = (xs lazyZip xs lazyZip xs lazyZip xs).map((a, b, c, d) => a + b + c + d) // res == List(4, 8, 12)
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | декоратор |
| Унаследовано от | Iterable |
Источник
Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.
| Возвращает | функцию, которая принимает аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Исходный код
Создаёт новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения заданной функции |
| Классы-определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Создаёт новую карту, применяя функцию ко всем элементам этой карты.
| Параметры значения |
|
|---|---|
| Возвращает | новая карта, полученная путём применения заданной функции |
| Унаследовано от | MapOps |
Исходный код
Объект-компаньон этой карты, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Классы-определения | Map -> Map -> MapOps |
| Унаследовано от | Map |
Исходный код
Билдер, полученный из этого билдера путём применения преобразования к результату с помощью f.
| Унаследовано от | Builder |
|---|
Исходный код
Применяет функцию преобразования ко всем значениям, содержащимся в этой карте. Функция преобразования генерирует новые значения из существующих значений, связанных с ключами.
| Параметры значения |
|
|---|---|
| Возвращает | сама карта. |
| Унаследовано от | MapOps |
Исходный код
Находит максимальный элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этой коллекции по отношению к упорядочению |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который даёт наибольшее значение, измеряемое функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f по отношению к упорядочению |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который даёт наибольшее значение, измеряемое функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа опция, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f по отношению к упорядочению |
| Унаследовано от | IterableOnceOps |
Исходный код
Находит максимальный элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа опция, содержащее наибольший элемент этой коллекции по отношению к упорядочению |
| Унаследовано от | IterableOnceOps |
Исходный код
Находит минимальный элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этой коллекции по отношению к упорядочению |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который даёт наименьшее значение, измеряемое функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Исключение |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершит работу для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение Option, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не завершит работу для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение Option, содержащее наименьший элемент этого набора относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этого набора в строке.
Делегирует addString, который может быть переопределен.
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с помощью метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этого набора в строке с использованием разделительной строки.
Делегирует addString, который может быть переопределен.
| Параметры значений |
|
|---|---|
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с помощью метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этого набора в строке с использованием начальной, конечной и разделительной строк.
Делегирует addString, который может быть переопределен.
| Параметры значений |
|
|---|---|
| Возвращает | строковое представление этого набора. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Проверяет, не пуст ли набор.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Компонует эту частичную функцию с резервной частичной функцией, которая применяется там, где эта частичная функция не определена.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | частичная функция, имеющая в качестве области определения объединение областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Source
Пара, во-первых, всех элементов, которые удовлетворяют предикату p, и, во-вторых, всех элементов, которые не удовлетворяют. Интересно, потому что разделяет набор на две части.
Реализация по умолчанию, приведенная здесь, должна пройти по набору дважды. Строгие наборы имеют переопределенный вариант partition в StrictOptimizedIterableOps, который требует только одного прохода.
| Классы определения | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Source
Применяет функцию 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 |
Исходный код
Сводит элементы этой коллекции с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
| Параметры типа |
|
|---|---|
| Параметры значений |
|
| Возвращает | Результат применения оператора reduce |
| Исключение |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значений |
|
| Возвращает | результат вставки |
| Исключение |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Необязательно применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен или оператор является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Исходный код
Сводит элементы этой коллекции, если они есть, с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
| Параметры типа |
|
|---|---|
| Параметры значений |
|
| Возвращает | Значение option, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Исходный код
Применяет бинарный оператор ко всем элементам этого набора, слева направо.
Примечание: не будет завершаться для наборов бесконечной длины.
Примечание: может возвращать разные результаты для разных запусков, если тип основного набора не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Значения параметров |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Возможно применяет бинарный оператор ко всем элементам этого набора, слева направо.
Примечание: не будет завершаться для наборов бесконечной длины.
Примечание: может возвращать разные результаты для разных запусков, если тип основного набора не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Значения параметров |
|
| Возвращает | значение опции, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
Удаляет ключ из этой карты, возвращая значение, ранее связанное с этим ключом, в виде опции.
| Значения параметров |
|
|---|---|
| Возвращает | значение опции, содержащее значение, ранее связанное с |
| Унаследовано от | MapOps |
Источник
def result(): C
Результирующий набор, состоящий из всех элементов, добавленных до сих пор.
| Унаследовано от | MapOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
Компонует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализовано через applyOrElse и, следовательно, потенциально более эффективно. Использование runWith предотвращает двойную оценку соответствий шаблонам и условий для литералов частичных функций.
| Параметры значения |
|
|---|---|
| Возвращает | функцию, которая сопоставляет аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Источник
Вычисляет префиксную сумму элементов коллекции.
Примечание: Нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, содержащая префиксную сумму элементов в этой итерируемой коллекции |
| Унаследовано от | IterableOps |
Источник
Создаёт итерируемую коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Головка коллекции — последний кумулятивный результат.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Унаследовано от | IterableOps |
Источник
Сравнивает размер этой итерируемой коллекции с размером другой Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Реализация метода не вызывает |
| Унаследовано от | IterableOps |
Источник
Сравнивает размер этой итерируемой коллекции со значением теста.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Реализация метода не вызывает |
| См. также | |
| Унаследовано от | IterableOps |
Источник
Подсказка о том, что ожидается, что размер этого билдера будет таким же, как у заданной коллекции, плюс некоторая дельта. Это предоставит подсказку только в том случае, если коллекция имеет известный размер. Некоторые классы билдеров оптимизируют своё представление на основе подсказки. Однако реализации билдеров всё равно должны работать корректно, даже если подсказка неверна, т. е. добавляется другое количество элементов.
| Параметры значения |
|
|---|---|
| Унаследовано от | Builder |
Источник
Подсказка о том, сколько элементов ожидается добавить при вызове следующей result. Некоторые классы билдеров оптимизируют своё представление на основе подсказки. Однако реализации билдеров всё равно должны работать корректно, даже если подсказка неверна, т. е. добавляется другое количество элементов.
| Параметры значения |
|
|---|---|
| Унаследовано от | Builder |
Источник
Подсказка о том, сколько элементов ожидается добавить при вызове следующей result вместе с верхним пределом, заданным размером другой коллекции. Некоторые классы билдеров оптимизируют своё представление на основе подсказки. Однако реализации билдеров всё равно должны работать корректно, даже если подсказка неверна, т. е. добавляется другое количество элементов.
| Параметры значения |
|
|---|---|
| Унаследовано от | Builder |
Источник
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. Для Steppers, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Steppers могут быть преобразованы только в последовательные потоки.
| Унаследовано от | IterableOnce |
|---|
Исходный код
Удаляет все элементы, сгенерированные итератором, из этого сжимаемого набора.
| Параметры значения |
|
|---|---|
| Возвращает | сам сжимаемый набор |
| Унаследовано от | Shrinkable |
Исходный код
Суммирует элементы этого набора.
Примечание: не завершится для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумма всех элементов этого набора относительно оператора |
| Унаследовано от | IterableOnceOps |
Исходный код
def tail: C
Остальная часть набора без первого элемента.
| Унаследовано от | IterableOps |
|---|
Исходный код
Итерирует по хвостам этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее — пустым итерируемым набором, при этом промежуточные значения будут результатами последовательных применений tail.
| Возвращает | итератор по всем хвостам этого итерируемого набора |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемый набор, содержащий только первые |
| Унаследовано от | IterableOps |
Исходный код
Набор, содержащий последние n элементы этого набора.
Примечание: даже при применении к представлению или ленивому набору он всегда принудительно вычисляет элементы.
| Классы-предки | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Берет самое длинное префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | самое длинное префикс этого итерируемого набора, чьи элементы все удовлетворяют предикату |
| Унаследовано от | IterableOps |
Исходный код
Применяет функцию со побочным эффектом к каждому элементу в этом наборе. Строгие наборы применят f к своим элементам немедленно, в то время как ленивые наборы, такие как представления и LazyLists, будут применять 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 |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Возвращает | Этот набор как |
|---|---|
| Унаследовано от | 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 |
|---|
Источник
Преобразует это итерируемое множество пар в два множества из первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пару итерируемых множеств, содержащих первую, соответственно вторую половину каждой пары элементов этого итерируемого множества. |
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
| Наследуется от | StrictOptimizedIterableOps |
Источник
Преобразует это итерируемое множество троек в три множества из первого, второго и третьего элемента каждой тройки.
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 |
Источник
Такая же карта с заданной функцией по умолчанию. Примечание: значение по умолчанию используется только для apply. Другие методы, такие как get, contains, iterator, keys, и т. д., не затрагиваются withDefaultValue.
Вызов методов преобразования (например, map) не сохранит значение по умолчанию.
| Параметры значения |
|
|---|---|
| Возвращает | обёртка карты с значением по умолчанию |
| Наследуется от | Map |
Источник
def withDefaultValue(d: V): Map[K, V]
Такая же карта с заданным значением по умолчанию. Примечание: значение по умолчанию используется только для 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)]
Возвращает итерируемое множество, образованное из этого итерируемого множества и другого итерируемого множества путём объединения соответствующих элементов в пары. Если одно из двух множеств длиннее другого, его оставшиеся элементы игнорируются.
END_OF_DOCUMENT_MARKER| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и |
| Определяющие классы | 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/mutable/LongMap.html