Trait SortedMapFactoryDefaults.SortedMapFactoryDefaults
trait SortedMapFactoryDefaults[K, +V, +CC <: ([x, y] =>> Map[x, y] & SortedMapOps[x, y, CC, CC[x, y]] & UnsortedCC[x, y]), +WithFilterCC <: ([x] =>> IterableOps[x, WithFilterCC, WithFilterCC[x]] & Iterable[x]), +UnsortedCC <: (Map)] extends SortedMapOps[K, V, CC, CC[K, V]] with MapOps[K, V, UnsortedCC, CC[K, V]]
Этот трайт предоставляет стандартные реализации для фабричных методов fromSpecific и newSpecificBuilder, которые нужно уточнить при реализации типа коллекции, уточняющей типы параметров CC и C. Он используется для отсортированных карт.
Обратите внимание, что в отсортированных картах тип CC карты не такой же, как тип CC для базовой карты (который фиксирован до Map в SortedMapOps). Поэтому этот трайт имеет три параметра типа CC, WithFilterCC и UnsortedCC. Метод withFilter, унаследованный от IterableOps, переопределен с совместимой стандартной реализацией.
Стандартные реализации в этом трайте могут быть использованы в общем случае, когда CC[A] совпадает с C.
| Суперайты | |
|---|---|
| Известные подтипы | |
| Тип Self |
Конкретные методы
Исходный код
override def empty: CC[K, V]
Пустой итерируемый объект того же типа, что и этот итерируемый объект
| Возвращает | пустой итерируемый объект типа |
|---|---|
| Классы определений | IterableOps |
Исходный код
override protected def fromSpecific(coll: IterableOnce[(K, V)]): CC[K, V]
Определяет, как преобразовать заданный Iterable[A] в коллекцию типа C.
Этот процесс может быть выполнен строго или нестрого (т. е. без вычисления элементов результирующих коллекций). Другими словами, этот метод определяет модель вычисления коллекции.
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как видно из аннотации |
|---|---|
| Классы определений | IterableOps |
Исходный код
override protected def newSpecificBuilder: Builder[(K, V), CC[K, V]]
| Возвращает | строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, scala.collection.View или scala.collection.immutable.LazyList), реализовать этот метод возможно, но результирующее |
|---|---|
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как видно из аннотации |
| Классы определений | IterableOps |
Исходный код
Создает нестрогий фильтр этой карты.
Примечание: разница между c filter p и c withFilter p заключается в том, что первый создает новую коллекцию, а второй только ограничивает область действия последующих map, flatMap, foreach и withFilter операций.
Примечание: результаты могут отличаться для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значений |
|
|---|---|
| Возвращает | объект класса |
| Классы определений | IterableOps |
Наследованные методы
Исходный код
final override def ++[V2 >: V](xs: IterableOnce[(K, V2)]): CC[K, V2]
Псевдоним для concat
| Классы определений | SortedMapOps -> MapOps |
|---|---|
| Наследуется от | SortedMapOps |
Исходный код
final def ++[B >: (K, V)](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
| Наследуется от | IterableOps |
|---|
Исходный код
Добавляет все элементы этой карты в строковый билдер с использованием начальной, конечной и разделительных строк. Текст, который записывается, начинается со строки 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
Добавляет все элементы этого набора в строку. Текст состоит из строковых представлений (относительно метода 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
Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить её побочное действие. Для повышения эффективности рекомендуется вместо isDefinedAt или apply использовать applyOrElse.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, суженная другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Source
override def andThen[C](k: V => C): PartialFunction[A, C]
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип времени выполнения функции является PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, возможно, суженная указанной функцией, которая отображает аргументы |
| Классы определения | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Source
def apply(key: K): V
Возвращает значение, связанное с заданным ключом. Этот метод вызывает метод default карты, если нет соответствия между заданным ключом и значением. Если не переопределено, метод default выбрасывает исключение NoSuchElementException.
| Параметры значения |
|
|---|---|
| Возвращает | значение, связанное с заданным ключом, или результат метода |
| Унаследовано от | MapOps |
Source
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 |
Source
def collect[K2, V2](pf: PartialFunction[(K, V), (K2, V2)]): CC[K2, V2]
Создаёт новый набор, применяя частичную функцию ко всем элементам этой карты, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая карта, полученная путём применения заданной частичной функции |
| Унаследовано от | MapOps |
Source
def collect[B](pf: PartialFunction[(K, V), B]): CC[B]
Создаёт новый набор элементов, применяя частичную функцию ко всем элементам этого итерируемого набора, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, полученный путём применения заданной частичной функции |
| Унаследовано от | IterableOps |
Source
def collect[K2, V2](pf: PartialFunction[(K, V), (K2, V2)])(implicit ordering: Ordering[K2]): CC[K2, V2]
Создаёт новую сортированную карту, применяя частичную функцию ко всем элементам этой карты, для которых функция определена.
| Параметры значения |
|
|---|---|
| Возвращает | новая карта, полученная путём применения заданной частичной функции |
| Унаследовано от | SortedMapOps |
Source
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значений |
|
|---|---|
| Возвращает | значение типа Option, содержащее результат применения pf к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Компонует другую частичную функцию k с этой частичной функцией так, что эта частичная функция применяется к результатам k.
Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | частичная функция с областью определения, суженной другой частичной функцией с помощью этой частичной функции, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Source
def compose[A](g: A => K): A => R
Компонует две функции Function1 в новую Function1, при этом эта функция применяется последней.
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Source
override def concat[V2 >: V](suffix: IterableOnce[(K, V2)]): CC[K, V2]
Возвращает новую карту, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов карты — это самый общий суперкласс, охватывающий типы элементов двух операндов.
| Параметры значений |
|
|---|---|
| Возвращает | новая карта, содержащая все элементы этой карты, за которыми следуют все элементы |
| Классы определений | SortedMapOps -> MapOps |
| Унаследовано от | SortedMapOps |
Source
def concat[B >: (K, V)](suffix: IterableOnce[B]): CC[B]
Возвращает новую итерируемую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов итерируемой коллекции — самый общий суперкласс, охватывающий типы элементов двух операндов.
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | новая итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, за которыми следуют все элементы |
| Унаследовано от | IterableOps |
Source
Проверяет, содержит ли эта карта привязку для ключа.
| Параметры значений |
|
|---|---|
| Возвращает |
|
| Унаследовано от | MapOps |
Source
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование прекращается, когда скопированы все элементы этой коллекции, достигнут конец массива или скопировано len элементов.
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода нужно выбросить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Source
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этой коллекции.
Копирование прекращается, когда скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода нужно выбросить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Source
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этой коллекции.
Копирование прекращается, когда скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода нужно выбросить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, соответствуют ли все элементы этого итератора соответствующим элементам другой коллекции, удовлетворяя предикату теста.
Примечание: не завершится для коллекций бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns |
|
| Inherited from | IterableOnceOps |
Source
Подсчитывает количество элементов в коллекции, которые удовлетворяют предикату.
Примечание: не завершится для коллекций бесконечного размера.
| Value parameters |
|
|---|---|
| Returns | число элементов, удовлетворяющих предикату |
| Inherited from | IterableOnceOps |
Source
def default(key: K): V
Определяет вычисление значения по умолчанию для карты, возвращаемое, когда ключ не найден. Реализованный здесь метод выбрасывает исключение, но может быть переопределен в подклассах.
| Value parameters |
|
|---|---|
| Inherited from | MapOps |
Source
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Value parameters |
|
|---|---|
| Returns | итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме первых |
| Inherited from | IterableOps |
Source
Выбирает все элементы, кроме последних n.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Value parameters |
|
|---|---|
| Returns | итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме последних |
| Inherited from | IterableOps |
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
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Value parameters |
|
|---|---|
| Returns |
|
| Inherited from | IterableOnceOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
| Value parameters |
|
|---|---|
| Returns | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, удовлетворяющих заданному предикату |
| Inherited from | IterableOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Value parameters |
|
|---|---|
| Returns | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Inherited from | IterableOps |
Source
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой есть.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции упорядочен.
| Value parameters |
|
|---|---|
| Returns | значение типа Option, содержащее первый элемент в коллекции, удовлетворяющий |
| Inherited from | IterableOnceOps |
Source
def firstKey: K
Возвращает первый ключ коллекции.
| Inherited from | SortedMapOps |
|---|
Source
def flatMap[K2, V2](f: ((K, V)) => IterableOnce[(K2, V2)]): CC[K2, V2]
Создает новую карту, применяя функцию ко всем элементам этой карты и используя элементы полученных коллекций.
| Value parameters |
|
|---|---|
| Returns | новая карта, полученная из применения заданной функции, возвращающей коллекцию |
| Inherited from | MapOps |
Source
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор данных, полученный в результате применения заданной функции, возвращающей набор данных |
| Унаследовано от | IterableOps |
Источник
def flatMap[K2, V2](f: ((K, V)) => IterableOnce[(K2, V2)])(implicit ordering: Ordering[K2]): CC[K2, V2]
Создаёт новый отсортированный набор данных, применяя функцию ко всем элементам этого набора данных и используя элементы полученных наборов данных.
| Параметры значения |
|
|---|---|
| Возвращает | новый набор данных, полученный в результате применения заданной функции, возвращающей набор данных |
| Унаследовано от | SortedMapOps |
Источник
def flatten[B](implicit asIterable: ((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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор данных, полученный в результате конкатенации всех итерируемых наборов элементов. |
| Унаследовано от | IterableOps |
Источник
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 |
Источник
Проверяет, выполняется ли предикат для всех элементов этого набора данных.
Примечание: может не завершиться для наборов данных бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для улучшения вывода типов scalac.
| Унаследовано от | IterableOnceOps |
|---|
Источник
def foreachEntry[U](f: (K, V) => U): Unit
Применяет f к каждой паре ключ/значение для его побочных эффектов. Примечание: параметр [U] необходим для улучшения вывода типов scalac.
| Унаследовано от | MapOps |
|---|
Источник
Возвращает значение, связанное с ключом, если оно существует.
| Параметры значения |
|
|---|---|
| Возвращает | объект Option, содержащий значение, связанное с |
| Унаследовано от | MapOps |
Источник
def getOrElse[V1 >: V](key: K, default: => V1): V1
Возвращает значение, связанное с ключом, или значение по умолчанию, если ключ не содержится в наборе данных.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение, связанное с |
| Унаследовано от | MapOps |
Source
Разделяет эту коллекцию итерируемых элементов на карту итерируемых коллекций согласно некоторой функции-дискриминатору.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
Карта, сопоставляющая ключи итерируемым коллекциям, такая что выполняется следующее инвариантное свойство: (xs groupBy f)(k) = xs filter (x => f(x) == k) То есть, каждый ключ |
| Унаследовано от | IterableOps |
Source
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций согласно функции-дискриминатору 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 |
Source
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
Проверяет, пуста ли коллекция.
Примечание: реализация в подклассах, которые не являются многократно итерируемыми, должна следить за тем, чтобы не потреблять элементы, когда вызывается isEmpty.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Source
override def isTraversableAgain: Boolean
Проверяет, может ли эта итерируемая коллекция быть многократно проитерирована. Всегда истинно для Iterables и ложно для Iterators, если не переопределено.
| Возвращает |
|
|---|---|
| Определения классов | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Source
def iterableFactory: IterableFactory[CC]
Компаньон-объект этой итерируемой коллекции, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Унаследовано от | IterableOps |
Source
Итератор может быть использован только один раз
| Унаследовано от | IterableOnce |
|---|
Source
def iteratorFrom(start: K): Iterator[(K, V)]
Создаёт итератор по всем парам ключ/значение, содержащимся в этом отображении, у которых ключ больше или равен start в соответствии с порядком этого отображения. x.iteratorFrom(y) эквивалентно, но часто эффективнее, чем x.from(y).iterator.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedMapOps |
Источник
Собирает все ключи этого отображения в множестве.
| Возвращает | множество, содержащее все ключи этого отображения. |
|---|---|
| Определяющие классы | SortedMapOps -> MapOps |
| Унаследовано от | SortedMapOps |
Источник
Возвращает Stepper для ключей этого отображения. См. метод stepper.
| Унаследовано от | MapOps |
|---|
Источник
Собирает все ключи этого отображения в итерируемом наборе.
| Возвращает | ключи этого отображения в виде итерируемого объекта. |
|---|---|
| Унаследовано от | MapOps |
Источник
def keysIterator: Iterator[K]
Создаёт итератор для всех ключей.
| Возвращает | итератор по всем ключам. |
|---|---|
| Унаследовано от | MapOps |
Источник
def keysIteratorFrom(start: K): Iterator[K]
Создаёт итератор по всем ключам (или элементам), содержащимся в этом наборе, которые больше или равны start в соответствии с порядком этого набора. x.keysIteratorFrom(y) эквивалентно, но часто эффективнее, чем x.from(y).keysIterator.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedMapOps |
Источник
| Возвращает | Количество элементов в этом наборе, если его можно вычислить без особых затрат, в противном случае -1. Без особых затрат обычно означает: Не требует обхода коллекции. |
|---|---|
| Унаследовано от | IterableOnce |
Источник
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | Последний элемент этого итерируемого набора. |
|---|---|
| Издаёт исключения |
|
| Унаследовано от | IterableOps |
Источник
def lastKey: K
Возвращает последний ключ набора.
| Унаследовано от | SortedMapOps |
|---|
Источник
def lastOption: Option[A]
Необязательно выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | последний элемент этого итерируемого набора, если он не пустой, |
|---|---|
| Унаследовано от | IterableOps |
Источник
Преобразует эту частичную функцию в простую функцию, возвращающую Option результат.
| Возвращает | функция, которая принимает аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Источник
def map[K2, V2](f: ((K, V)) => (K2, V2)): CC[K2, V2]
Строит новое отображение, применяя функцию ко всем элементам этого отображения.
| Параметры значения |
|
|---|---|
| Возвращает | новое отображение, полученное в результате применения заданной функции |
| Унаследовано от | MapOps |
Источник
def map[B](f: ((K, V)) => B): CC[B]
Строит новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная в результате применения заданной функции |
| Унаследовано от | IterableOps |
Источник
Строит новое отсортированное отображение, применяя функцию ко всем элементам этого отображения.
| Параметры значения |
|
|---|---|
| Возвращает | новое отображение, полученное в результате применения заданной функции |
| Унаследовано от | SortedMapOps |
Источник
def mapFactory: MapFactory[CC]
Компаньон-объект этого отображения, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Унаследовано от | MapOps |
Источник
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этой коллекции по отношению к порядку |
| Издаёт исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Найти элемент с наибольшим ключом, меньшим заданного ключа.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SortedMapOps |
Source
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение варианта, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наибольший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение варианта, содержащее наибольший элемент этой коллекции относительно порядка |
| Унаследовано от | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этой коллекции относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Найти элемент с наименьшим ключом, большим или равным заданному ключу.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SortedMapOps |
Исходный код
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наименьшим значением, измеренным функцией f относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа Option, содержащее первый элемент этой коллекции с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Исходный код
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа Option, содержащее наименьший элемент этой коллекции относительно порядка |
| Унаследовано от | IterableOnceOps |
Исходный код
Отображает все элементы этой коллекции в строке.
Делегирует addString, который может быть переопределён.
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
Отображает все элементы этой коллекции в строке с использованием разделительной строки.
Делегирует addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этого набора в строке, используя строки start, end и разделитель.
Делегирует addString, который может быть переопределён.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этого набора. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Проверяет, является ли набор непустым.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Компонует эту частичную функцию с частичной функцией по умолчанию, которая применяется там, где эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, у которой область определения является объединением областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Source
| Унаследовано от | SortedOps |
|---|
Source
Пара, во-первых, всех элементов, которые удовлетворяют предикату p, и, во-вторых, всех элементов, которые не удовлетворяют. Интересно, потому что разделяет набор на две части.
Стандартная реализация здесь требует два прохода по набору. Строгие наборы имеют переопределённую версию partition в StrictOptimizedIterableOps, которая требует только одного прохода.
| Унаследовано от | IterableOps |
|---|
Source
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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пара наборов: первый набор состоит из тех значений, которые возвращает |
| Унаследовано от | IterableOps |
Source
Перемножает элементы этого набора.
Примечание: не завершится для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этого набора относительно оператора |
| Унаследовано от | IterableOnceOps |
Source
def range(from: K, until: K): C
Создаёт проецирование диапазона этого набора с нижней и верхней границами.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Source
def rangeFrom(from: K): C
Создаёт проецирование диапазона этого набора без верхней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Source
Создаёт проецирование диапазона этого набора. Любые изменения в проецировании диапазона обновит этот набор и наоборот.
Примечание: ключи не гарантируются согласованными между этим набором и проецированием. Это справедливо для буферов, где индексация относительна к проецированию.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Source
def rangeTo(to: K): C
Создаёт проецирование диапазона этого набора без нижней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedMapOps |
Source
def rangeUntil(until: K): C
Создаёт проецирование диапазона этого набора без нижней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Source
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]
Возвращает результат применения бинарного оператора ко всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | объект типа Option, содержащий результат |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceOption[B >: (K, V)](op: (B, B) => B): Option[B]
Редуцирует элементы этой коллекции, если они есть, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Объект типа Option, содержащий результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceRight[B >: (K, V)](op: ((K, V), B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceRightOption[B >: (K, V)](op: ((K, V), B) => B): Option[B]
Возвращает результат применения бинарного оператора ко всем элементам этой коллекции справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | объект типа Option, содержащий результат |
| Унаследовано от | IterableOnceOps |
Исходный код
| Унаследовано от | 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 |
Исходный код
def scanLeft[B](z: B)(op: (B, (K, V)) => B): CC[B]
Создаёт итерируемую коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Унаследовано от | IterableOps |
Source
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 |
Source
Размер этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Возвращает | количество элементов в этой коллекции. |
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Сравнивает размер этой итерируемой коллекции с размером другой Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Метод в данной реализации не вызывает |
| Унаследовано от | IterableOps |
Source
Сравнивает размер этой итерируемой коллекции со значением-эталоном.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Метод в данной реализации не вызывает |
| См. также | |
| Унаследовано от | IterableOps |
Source
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 |
|---|
Source
Выбирает интервал элементов. Возвращаемая итерируемая коллекция содержит все элементы x, удовлетворяющие инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемую коллекцию, содержащую элементы, начиная с индекса |
| Унаследовано от | IterableOps |
Source
Группирует элементы в блоки фиксированного размера, перемещая "скользящее окно" над ними (в отличие от разбиения, как в grouped).
Возвращаемый итератор будет пустым, если вызывается на пустой коллекции. Последний элемент, который генерирует итератор, может быть меньше размера окна, если исходная коллекция не исчерпывается окном до конца, и последний элемент не пропускается шагом перед ним.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Source
Группирует элементы в блоки фиксированного размера, перемещая "скользящее окно" над ними (в отличие от разбиения, как в grouped).
Пустая коллекция возвращает пустой итератор, а коллекция с количеством элементов меньше размера окна возвращает итератор, который сгенерирует исходную коллекцию как единственный элемент.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Source
def sortedMapFactory: SortedMapFactory[CC]
Компаньон-объект этой сортированной карты, предоставляющий различные фабричные методы.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Унаследовано от | SortedMapOps |
Source
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пару, состоящую из самого длинного префикса этой итерируемой коллекции, элементы которого удовлетворяют |
| Унаследовано от | IterableOps |
Source
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: 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 элементов.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемая коллекция, содержащая только последние |
| Унаследовано от | IterableOps |
Источник
Возвращает самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный префикс этой итерируемой коллекции, все элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Источник
override def tapEach[U](f: ((K, V)) => U): C
Применяет функцию с побочным эффектом к каждому элементу в этой коллекции. Строгие коллекции немедленно применяют f к своим элементам, в то время как ленивые коллекции, такие как представления и LazyLists, применяют f к каждому элементу только при и в тот момент, когда этот элемент вычисляется, и каждый раз при вычислении этого элемента.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Такая же логическая коллекция, как и эта |
| Определяющие классы | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
При заданной фабрике коллекций factory, преобразует эту коллекцию в соответствующее представление для текущего типа элементов A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Источник
Преобразует коллекцию в массив.
Примечание реализации: НЕ вызывайте Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Source
def toIndexedSeq: IndexedSeq[A]
| Inherited from | IterableOnceOps |
|---|
Source
| Inherited from | IterableOnceOps |
|---|
Source
| Inherited from | IterableOnceOps |
|---|
Source
| Возвращает | Это коллекция в виде |
|---|---|
| Inherited from | IterableOnceOps |
Source
| Inherited from | IterableOnceOps |
|---|
Source
Возвращает строковое представление объекта.
По умолчанию представление зависит от платформы.
| Возвращает | строковое представление объекта. |
|---|---|
| Классы определений | Function1 -> Any |
| Inherited from | Function1 |
Source
| Inherited from | IterableOnceOps |
|---|
Source
Транспонирует эту итерируемую коллекцию итерируемых коллекций в итерируемую коллекцию итерируемых коллекций.
Тип результирующей коллекции будет определяться статическим типом итерируемой коллекции. Например:
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-му столбцу этой итерируемой коллекции. |
| Исключения |
|
| Inherited from | IterableOps |
Source
Попытка извлечь B из A в выражении сопоставления с образцом.
| Inherited from | PartialFunction |
|---|
Source
| Inherited from | SortedMapOps |
|---|
Source
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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пара итерируемых коллекций, содержащих первую, соответственно вторую половину каждой пары элементов этой итерируемой коллекции. |
| Inherited from | IterableOps |
Source
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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | тройка итерируемых коллекций, содержащих первый, второй, соответственно третий член каждой тройки элементов этой итерируемой коллекции. |
| Inherited from | IterableOps |
Source
Возвращает Stepper для значений этой карты. См. метод stepper.
| Inherited from | MapOps |
|---|
Source
Собирает все значения этой карты в итерируемую коллекцию.
| Возвращает | значения этой карты в виде итерируемой коллекции. |
|---|---|
| Inherited from | MapOps |
Source
def valuesIterator: Iterator[V]
Создает итератор для всех значений в этой карте.
| Возвращает | итератор по всем значениям, связанным с каким-либо ключом в этой карте. |
|---|---|
| Inherited from | MapOps |
Source
def valuesIteratorFrom(start: K): Iterator[V]
Создает итератор по всем значениям, содержащимся в этой карте, связанным с ключом, большим или равным start согласно порядку этой карты. x.valuesIteratorFrom(y) эквивалентно, но часто эффективнее, чем x.from(y).valuesIterator.
| Параметры значения |
|
|---|---|
| Inherited from | SortedMapOps |
Source
Представление элементов этой коллекции.
| Классы определений | MapOps -> IterableOps |
|---|---|
| Inherited from | MapOps |
Source
def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемую коллекцию, образованную из этой итерируемой коллекции и другой итерируемой коллекции, объединяя соответствующие элементы парами. Если одна из двух коллекций длиннее другой, её оставшиеся элементы игнорируются.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, содержащая пары, состоящие из соответствующих элементов этой итерируемой коллекции и |
| Унаследовано от | IterableOps |
Source
Возвращает итерируемую коллекцию, образованную из этой итерируемой коллекции и другой итерируемой коллекции, объединяя соответствующие элементы парами. Если одна из двух коллекций короче другой, для расширения более короткой коллекции до длины более длинной используются элементы-заполнители.
| Параметры значения |
|
|---|---|
| Возвращает | новая коллекция типа |
| Унаследовано от | IterableOps |
Source
def zipWithIndex: CC[(A, Int)]
Объединяет эту итерируемую коллекцию с её индексами.
| Возвращает | Новая итерируемая коллекция, содержащая пары, состоящие из всех элементов этой итерируемой коллекции, соединённых с их индексом. Индексы начинаются с |
|---|---|
| Пример | |
| Унаследовано от | IterableOps |
© 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/SortedMapFactoryDefaults.html