Трейт scala.collection.IterableOps
Базовый трейт для операций над Iterable
VarianceNote
Требуется, чтобы для всех дочерних классов Iterable ковариантность дочернего класса и ковариантность параметра C передаваемого в IterableOps были одинаковыми. Мы не можем выразить это, так как нам не хватает полиморфизма ковариантности. Поэтому нам приходится в некоторых местах использовать C[A @uncheckedVariance].
| Параметры типа |
|
|---|---|
| Супертипы | |
| Известные подтипы | 244 типа |
Абстрактные методы
Источник
def iterableFactory: IterableFactory[CC]
Объект-компаньон этого итерируемого набора, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|
Конкретные методы
Источник@inline
final def ++[B >: A](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
Источник
def collect[B](pf: PartialFunction[A, B]): CC[B]
Источник
def concat[B >: A](suffix: IterableOnce[B]): CC[B]
Возвращает новую итерируемую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента итерируемой коллекции — это наиболее конкретный суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, которая содержит все элементы этой итерируемой коллекции, за которыми следуют все элементы |
Источник
Источник
Выбирает все элементы, кроме последних n.
Примечание: может возвращать разные результаты для разных запусков, если тип основной коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме последних |
Источник
Источник
def empty: C
Пустой итерируемый набор того же типа, что и этот итерируемый набор
| Возвращает | пустой итерируемый набор типа |
|---|
Источник
Источник
Источник
def flatMap[B](f: A => IterableOnce[B]): CC[B]
Источник
def flatten[B](implicit asIterable: A => IterableOnce[B]): CC[B]
Источник
Разделяет этот итерируемый набор на карту итерируемых наборов в соответствии с некоторой функцией-дискриминатором.
Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно выполнять элементы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
Карту из ключей в итерируемые наборы, для которых выполняется следующее инвариантное условие: (xs groupBy f)(k) = xs filter (x => f(x) == k) То есть, каждый ключ |
Источник
Разделяет этот итерируемый набор на карту итерируемых наборов в соответствии с функцией-дискриминатором 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)
Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно выполнять элементы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
Источник
def groupMapReduce[K, B](key: A => K)(f: A => 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)(_ + _)
Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно выполнять элементы.
Источник
Разделяет элементы на итерируемые наборы фиксированного размера.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые наборы размером |
| См. также | scala.collection.Iterator, метод |
Источник
def head: A
Выбирает первый элемент этого итерируемого набора.
Примечание: может возвращать разные результаты для разных запусков, если тип основного набора не упорядочен.
| Возвращает | первый элемент этого итерируемого набора. |
|---|---|
| Исключение |
|
Источник
def headOption: Option[A]
Выбирает первый элемент (необязательно).
Примечание: может возвращать разные результаты для разных запусков, если тип основного набора не упорядочен.
| Возвращает | первый элемент этого итерируемого набора, если он непустой, |
|---|
Источник
def init: C
Начальная часть набора без последнего элемента.
Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно выполнять элементы.
Источник
Итерируется по начальным частям этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее - пустым итерируемым набором, промежуточные значения - результаты последовательного применения init.
Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно выполнять элементы.
| Возвращает | итератор по всем начальным частям этого итерируемого набора |
|---|---|
| Пример |
|
Источник
override def isTraversableAgain: Boolean
| Классы определений | IterableOnceOps |
|---|
Источник
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип основного набора не упорядочен.
| Возвращает | Последний элемент этого итерируемого набора. |
|---|---|
| Исключение |
|
Источник
def lastOption: Option[A]
Выбирает последний элемент (необязательно).
Примечание: может возвращать разные результаты для разных запусков, если тип основного набора не упорядочен.
| Возвращает | последний элемент этого итерируемого набора, если он непустой, |
|---|
Источник
def map[B](f: A => B): CC[B]
Источник
Пара из, во-первых, всех элементов, удовлетворяющих предикату p и, во-вторых, всех элементов, которые не удовлетворяют. Интересно тем, что разделяет набор на две части.
У реализаций по умолчанию здесь требуется два прохода по набору. Строгие наборы имеют переопределённый метод partition в StrictOptimizedIterableOps, который требует только одного прохода.
Source
def partitionMap[A1, A2](f: A => 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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пару итерируемых наборов: первый содержит значения, возвращённые |
Source
def scan[B >: A](z: B)(op: (B, B) => B): CC[B]
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может быть применён более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий префиксное сканирование элементов в этом итерируемом наборе |
Source
def scanLeft[B](z: B)(op: (B, A) => B): CC[B]
Source
def scanRight[B](z: B)(op: (A, B) => B): CC[B]
Производит набор, содержащий кумулятивные результаты применения оператора справа налево. Головной элемент набора — последний кумулятивный результат.
Примечание: не будет завершаться для коллекций бесконечной длины.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Примечание: даже при применении к представлению или ленивой коллекции всегда будет форсировать элементы.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | набор с промежуточными результатами |
Source
Сравнивает размер этого итерируемого набора с тестовым значением.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Реализация этого метода не вызывает |
| См. также |
Source
Сравнивает размер этого итерируемого набора с размером другого Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Реализация этого метода не вызывает |
Source@inline
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
Source
Source
Группирует элементы в блоки фиксированного размера, перемещая "скользящее окно" по ним (в отличие от разбиения, как в grouped.)
Пустая коллекция возвращает пустой итератор, а непустая коллекция, содержащая меньше элементов, чем размер окна, возвращает итератор, который вернёт исходную коллекцию как единственный элемент.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые наборы размером |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
Source
Группирует элементы в блоки фиксированного размера, перемещая "скользящее окно" по ним (в отличие от разбиения, как в grouped.)
Возвращаемый итератор будет пустым при вызове на пустой коллекции. Последний элемент, который итератор вернёт, может быть меньше размера окна, если исходная коллекция не исчерпана окном до конца, и последний элемент не пропущен шагом.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые наборы размером |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
Source
Source
| Классы определений | IterableOnceOps |
|---|
Source
def tail: C
Остаток коллекции без её первого элемента.
Source
Итерирует по хвостам этого итерируемого набора. Первое значение — это сам итерируемый набор, а последнее — пустой итерируемый набор, промежуточные значения — результат последовательных применений tail.
| Возвращает | итератор по всем хвостам этого итерируемого набора |
|---|---|
| Пример |
|
Источник
Источник
Выбирает последние n элементов.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры |
|
|---|---|
| Возвращает | итерируемый набор, содержащий только последние |
Источник
Берет самое длинное префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры |
|
|---|---|
| Возвращает | самое длинное префикс этого итерируемого набора, элементы которого удовлетворяют предикату |
Источник
override def tapEach[U](f: A => U): C
| Классы-определения | 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-м столбцом этого итерируемого набора. |
| Исключения |
|
Источник
def unzip[A1, A2](implicit asPair: A => (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))
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | пара итерируемых наборов, содержащая первую, соответственно вторую половину каждой пары элементов этого итерируемого набора. |
Источник
def unzip3[A1, A2, A3](implicit asTriple: A => (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))
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | тройка итерируемых наборов, содержащая первый, второй, соответственно третий член каждой тройки элементов этого итерируемого набора. |
Источник
Представление над элементами этого набора.
Источник
Создает нестрогий фильтр этого итерируемого набора.
Примечание: различие между c filter p и c withFilter p заключается в том, что первый создает новый набор, а второй только ограничивает область последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры |
|
|---|---|
| Возвращает | объект класса |
Источник
def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора путем объединения соответствующих элементов парами. Если один из двух наборов длиннее другого, его оставшиеся элементы игнорируются.
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | новый итерируемый набор, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и |
Источник
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора путем объединения соответствующих элементов парами. Если один из двух наборов короче другого, используются заполнительные элементы для расширения более короткого набора до длины более длинного.
| Параметры |
|
|---|---|
| Возвращает | новый набор типа |
Источник
def zipWithIndex: CC[(A, Int)]
Наследованные методы
Источник@inline
Добавляет все элементы этой коллекции в строковый буфер. Записанный текст состоит из строковых представлений (согласно методу 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 |
Источник@inline
Добавляет все элементы этой коллекции в строковый буфер с использованием разделительной строки. Записанный текст состоит из строковых представлений (согласно методу 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)
| Параметры значения |
|
|---|---|
| Возвращает | строковый буфер |
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение Option, содержащее pf, применённую к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет указанный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование прекращается, когда скопированы все элементы этой коллекции, достигнут конец массива или len элементов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Использование его после вызова неопределённо и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет указанный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекращается, когда скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Использование его после вызова неопределённо и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет указанный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекращается, когда скопированы все элементы этой коллекции или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует удалить. Использование его после вызова неопределённо и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент итератора этой коллекции соответствующему элементу другой коллекции, удовлетворяя условию предиката.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Подсчитывает количество элементов в коллекции, которые удовлетворяют предикату.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, выполняется ли предикат для хотя бы одного элемента в этом наборе.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент в наборе, удовлетворяющий предикату, если таковой существует.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее первый элемент в наборе, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Source
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
Складывает элементы в этом наборе, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок выполнения операций над элементами не определен и может быть недетерминированным.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат применения оператора fold |
| Унаследовано от | IterableOnceOps |
Source
def foldLeft[B](z: B)(op: (B, A) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этого набора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Source
def foldRight[B](z: B)(op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этого набора и начальному значению, справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершиться для наборов бесконечного размера.
| Параметры |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | IterableOnceOps |
Source
Применение f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
| Унаследовано от | IterableOnceOps |
|---|
Source
Проверяет, пуст ли набор.
Примечание: Реализации в подклассах, которые не являются повторно просматриваемыми, должны позаботиться о том, чтобы не потреблять никакие элементы при вызове isEmpty.
| Возвращаемое значение |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Итератор может быть использован только один раз
| Унаследовано от | IterableOnce |
|---|
Source
| Возвращаемое значение | Количество элементов в этом наборе, если оно может быть вычислено без затрат, -1 в противном случае. Без затрат обычно означает: не требуя обхода набора. |
|---|---|
| Унаследовано от | IterableOnce |
Source
Находит наибольший элемент.
Примечание: не завершится для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращаемое значение | наибольший элемент этого набора относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | первый элемент этого набора с наибольшим значением, измеренным функцией f относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опции, содержащее первый элемент этого набора с наибольшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наибольший элемент.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опции, содержащее наибольший элемент этого набора относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | наименьший элемент этого набора относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опции, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершится для наборов бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение опции, содержащее наименьший элемент этого набора относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник@inline
Отображает все элементы этого набора в строке.
Делегирует addString, которая может быть переопределена.
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с помощью метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник@inline
Отображает все элементы этого набора в строке с использованием разделительной строки.
Делегирует addString, которая может быть переопределена.
| Параметры значений |
|
|---|---|
| Возвращает | строковое представление этого набора. В результирующей строке строковые представления (с помощью метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этого набора в строке, используя начальную, конечную и разделительные строки.
Делегирует addString, которая может быть переопределена.
| Параметры значений |
|
|---|---|
| Возвращает | строковое представление этого набора. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник@deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
Проверяет, не пуст ли набор.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
Перемножает элементы этой коллекции.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduce[B >: A](op: (B, B) => B): B
Сводит элементы этой коллекции с помощью заданного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Результат применения оператора reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceLeft[B >: A](op: (B, A) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]
Применяет бинарный оператор ко всем элементам этой коллекции слева направо, если возможно.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа Option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceOption[B >: A](op: (B, B) => B): Option[B]
Сводит элементы этой коллекции, если они есть, с помощью заданного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Значение Option, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceRight[B >: A](op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
Возвращает значение бинарного оператора ко всем элементам этой коллекции, двигаясь справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение Option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
Размер этой коллекции.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Возвращает | количество элементов в этой коллекции. |
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
Возвращает 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. Для степеров, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, в то время как обычные степеры могут быть преобразованы только в последовательные потоки.
| Наследуется от | IterableOnce |
|---|
Источник
Суммирует элементы этого набора.
Примечание: не завершится для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | сумма всех элементов этого набора по отношению к оператору |
| Наследуется от | IterableOnceOps |
Источник
Используя фабрику наборов factory, преобразуйте этот набор в соответствующее представление для текущего типа элементов A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Наследуется от | IterableOnceOps |
|---|
Источник
Преобразовать набор в массив.
Примечание к реализации: НЕ вызывайте Array.from из этого метода.
| Наследуется от | IterableOnceOps |
|---|
Источник@inline
| Наследуется от | IterableOnceOps |
|---|
Источник
def toIndexedSeq: IndexedSeq[A]
| Наследуется от | IterableOnceOps |
|---|
Источник
| Наследуется от | IterableOnceOps |
|---|
Источник
| Наследуется от | IterableOnceOps |
|---|
Источник
| Возвращаемое значение | Этот набор как |
|---|---|
| Наследуется от | IterableOnceOps |
Источник
| Наследуется от | IterableOnceOps |
|---|
Источник
| Наследуется от | IterableOnceOps |
|---|
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/collection/IterableOps.html