Spec-Zone.ru › Scala 3.1

Класс scala.collection.immutable.Inclusive

Исходный код

@SerialVersionUID(3L)
class Inclusive[T](start: T, end: T, step: T)(implicit num: Integral[T]) extends NumericRange[T]

Наследуемые типы
28 типов
class NumericRange[T]
интерфейс Serializable
интерфейс StrictOptimizedSeqOps[T, IndexedSeq, IndexedSeq[T]]
интерфейс StrictOptimizedSeqOps[T, IndexedSeq, IndexedSeq[T]]
интерфейс StrictOptimizedIterableOps[T, IndexedSeq, IndexedSeq[T]]
интерфейс IndexedSeq[T]
интерфейс IndexedSeqOps[T, IndexedSeq, IndexedSeq[T]]
интерфейс IndexedSeq[T]
интерфейс IndexedSeqOps[T, IndexedSeq, IndexedSeq[T]]
класс AbstractSeq[T]
интерфейс Seq[T]
интерфейс SeqOps[T, IndexedSeq, IndexedSeq[T]]
интерфейс Iterable[T]
класс AbstractSeq[T]
интерфейс Seq[T]
интерфейс Equals
интерфейс SeqOps[T, IndexedSeq, IndexedSeq[T]]
интерфейс PartialFunction[Int, T]
интерфейс Int => T
класс AbstractIterable[T]
интерфейс Iterable[T]
интерфейс IterableFactoryDefaults[T, IndexedSeq]
интерфейс IterableOps[T, IndexedSeq, IndexedSeq[T]]
интерфейс IterableOnceOps[T, IndexedSeq, IndexedSeq[T]]
интерфейс IterableOnce[T]
класс Object
интерфейс Matchable
класс Any

Конкретные методы

Исходный код
override def copy(start: T, end: T, step: T): Inclusive[T]

Определяющие классы NumericRange

Исходный код
def exclusive: Exclusive[T]

Наследуемые методы

Исходный код@inline
final def ++[B >: T](suffix: IterableOnce[B]): IndexedSeq[B]

Псевдоним для concat

Наследуется от IterableOps

Исходный код@inline
final override def ++:[B >: T](prefix: IterableOnce[B]): IndexedSeq[B]

Псевдоним для prependedAll

Определяющие классы SeqOps -> IterableOps
Наследуется от SeqOps

Исходный код@inline
final def +:[B >: T](elem: B): IndexedSeq[B]

Псевдоним для prepended. Обратите внимание, что операторы, заканчивающиеся двоеточием, являются правоассоциативными (см. пример). Мемоника для +: против :+ такова: двоеточие идёт со стороны коллекции.

Наследуется от SeqOps

Исходный код@inline
final def :+[B >: T](elem: B): IndexedSeq[B]

Псевдоним для appended. Обратите внимание, что операторы, заканчивающиеся двоеточием, являются правоассоциативными (см. пример). Мемоника для +: против :+ такова: двоеточие идёт со стороны коллекции.

Наследуется от SeqOps

Исходный код@inline
final def :++[B >: T](suffix: IterableOnce[B]): IndexedSeq[B]

Псевдоним для appendedAll

Наследуется от SeqOps

Исходный код@inline
final def addString(b: StringBuilder): StringBuilder

Добавляет все элементы этой коллекции в строковый буфер. Записанный текст состоит из строковых представлений (с точки зрения метода toString) всех элементов этой коллекции без разделителя.

Пример:

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = new StringBuilder()
b: StringBuilder =

scala> val h = a.addString(b)
h: StringBuilder = 1234
Параметры значения
b

строковый буфер, в который добавляются элементы.

Возвращает

строковый буфер b, в который были добавлены элементы.

Наследуется от IterableOnceOps

Исходный код@inline
final def addString(b: StringBuilder, sep: String): StringBuilder

Добавляет все элементы этой коллекции в строковый буфер с использованием разделителя. Записанный текст состоит из строковых представлений (с точки зрения метода toString) всех элементов этой коллекции, разделённых строкой sep.

Пример:

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = new StringBuilder()
b: StringBuilder =

scala> a.addString(b, ", ")
res0: StringBuilder = 1, 2, 3, 4
Параметры значения
b

строковый буфер, в который добавляются элементы.

sep

разделительная строка.

Возвращает

строковый буфер b, в который были добавлены элементы.

Наследуется от IterableOnceOps

Исходный код
def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder

Добавляет все элементы этой коллекции в строковый буфер с использованием начальной, конечной и разделительных строк. Записанный текст начинается со строки 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)
Параметры значения
b

строковый буфер, в который добавляются элементы.

end

конечная строка.

sep

разделительная строка.

start

начальная строка.

Возвращает

строковый буфер b, в который были добавлены элементы.

Наследуется от IterableOnceOps

Исходный код
def andThen[C](k: PartialFunction[T, C]): PartialFunction[Int, C]

Компонует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.

Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить ее побочный эффект. Для повышения эффективности рекомендуется вызывать applyOrElse вместо isDefinedAt или apply.

Параметры типа
C

тип результата функции преобразования.

Параметры значения
k

функция преобразования

Возвращает

частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы x в k(this(x)).

Унаследовано от PartialFunction

Исходный код
override def andThen[C](k: T => C): PartialFunction[Int, C]

Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.

Если тип функции во время выполнения является PartialFunction, то используется другой метод andThen (обратите внимание на его предостережения).

Параметры типа
C

тип результата функции преобразования.

Параметры значения
k

функция преобразования

Возвращает

частичная функция с областью определения этой частичной функции, возможно, суженной указанной функцией, которая отображает аргументы x в k(this(x)).

Классы определения PartialFunction -> Function1
Унаследовано от PartialFunction

Исходный код
override def appended[B >: T](elem: B): IndexedSeq[B]

Классы определения StrictOptimizedSeqOps -> SeqOps
Унаследовано от StrictOptimizedSeqOps

Исходный код
override def appendedAll[B >: T](suffix: IterableOnce[B]): IndexedSeq[B]

Классы определения StrictOptimizedSeqOps -> SeqOps
Унаследовано от StrictOptimizedSeqOps

Исходный код@throws(scala.throws.$lessinit$greater$default$1[scala.IndexOutOfBoundsException])
def apply(idx: Int): T

Унаследовано от NumericRange

Исходный код
def applyOrElse[A1 <: Int, B1 >: T](x: A1, default: A1 => B1): B1

Применяет эту частичную функцию к заданному аргументу, когда он содержится в области определения функции. Применяет функцию обратного вызова, когда эта частичная функция не определена.

Обратите внимание, что выражение 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. Это может привести к лучшей производительности и более предсказуемому поведению с точки зрения побочных эффектов.

Параметры значения
default

функция обратного вызова

x

аргумент функции

Возвращает

результат применения этой функции или функции обратного вызова.

Унаследовано от PartialFunction

Исходный код
def by(newStep: T): NumericRange[T]

Создает новый диапазон со значениями начала и конца этого диапазона и новым step.

Унаследовано от NumericRange

Исходный код
override def canEqual(that: Any): Boolean

Классы определения IndexedSeq -> Seq -> Equals
Унаследовано от IndexedSeq

Исходный код
override def collect[B](pf: PartialFunction[T, B]): IndexedSeq[B]

Классы определения StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps

Исходный код
def collectFirst[B](pf: PartialFunction[T, B]): Option[B]

Ищет первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.

Примечание: может не завершиться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

Параметры значения
pf

частичная функция

Возвращает

значение типа Option, содержащее результат применения pf к первому значению, для которого оно определено, или None если такового не существует.

Пример

Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)

Унаследовано от IterableOnceOps

Исходный код
def combinations(n: Int): Iterator[IndexedSeq[T]]

Итерация по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке. Таким образом, "xy" и "yy" являются комбинациями длины 2 последовательности "xyy", но "yx" не является. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращен только один.

Например, "xyyy" имеет три разных способа сгенерировать "xy" в зависимости от того, какой первый, второй или третий элемент "y" был выбран. Однако, поскольку все они идентичны, будет выбран только один. Какой из трех будет выбран, является реализационным деталем, который не определен.

Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут форсироваться.

Возвращает

Итератор, который перебирает все возможные комбинации из n элементов этой последовательности.

Пример

"abbbc".combinations(2) = Iterator(ab, ac, bb, bc)

Унаследовано от SeqOps
END_OF_DOCUMENT_MARKER ```

Source
def compose[R](k: PartialFunction[R, Int]): PartialFunction[R, T]

Компонует другую частичную функцию k с этой частичной функцией таким образом, что эта частичная функция применяется к результатам k.

Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить её побочное действие. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.

Параметры типа
R

тип параметра функции преобразования.

Параметры значения
k

функция преобразования

Возвращает

частичная функция с областью определения другой частичной функции, суженной этой частичной функцией, которая отображает аргументы x в this(k(x)).

Унаследовано от PartialFunction

Source@unspecialized
def compose[A](g: A => Int): A => T

Компонует две экземпляры Function1 в новую Function1, применяя эту функцию последней.

Параметры типа
A

тип, к которому можно применить функцию g

Параметры значения
g

функция A => T1

Возвращает

новая функция f такая, что f(x) == apply(g(x))

Унаследовано от Function1

Source@inline
final override def concat[B >: T](suffix: IterableOnce[B]): IndexedSeq[B]

Классы-предки SeqOps -> IterableOps
Унаследовано от SeqOps

Source
override def contains[A1 >: T](x: A1): Boolean

Классы-предки NumericRange -> SeqOps
Унаследовано от NumericRange

Source
def containsSlice[B >: T](that: Seq[B]): Boolean

Проверяет, содержит ли эта последовательность заданную последовательность как срез.

Примечание: может не завершаться для последовательностей бесконечного размера.

Параметры значения
that

последовательность для проверки

Возвращает

true если эта последовательность содержит срез с теми же элементами, что и that, в противном случае false.

Унаследовано от SeqOps

Source
def containsTyped(x: T): Boolean

Унаследовано от NumericRange

Source
def copyToArray[B >: T](xs: Array[B], start: Int, len: Int): Int

Копирует элементы в массив, возвращая количество скопированных элементов.

Заполняет заданный массив xs начиная с индекса start не более чем len элементами из этого набора.

Копирование остановится, как только будут скопированы все элементы этого набора, или будет достигнут конец массива, или len элементов будут скопированы.

Параметры типа
B

тип элементов массива.

Параметры значения
len

максимальное количество копируемых элементов.

start

начальный индекс xs.

xs

массив для заполнения.

Возвращает

количество элементов, записанных в массив

Примечание

Использование: После вызова этого метода итератор, на котором он был вызван, должен быть отброшен. Использование итератора после этого вызова не определено и может быть изменено.

Унаследовано от IterableOnceOps

Исходный код@deprecatedOverriding("Это должно всегда перенаправляться на версию метода с 3 аргументами", since = "2.13.4")
def copyToArray[B >: T](xs: Array[B], start: Int): Int

Копирует элементы в массив, возвращая количество скопированных элементов.

Заполняет заданный массив xs начиная с индекса start значениями этого набора.

Копирование остановится, как только будут скопированы все элементы этого набора, или будет достигнут конец массива.

Параметры типа
B

тип элементов массива.

Параметры значения
start

начальный индекс xs.

xs

массив для заполнения.

Возвращает

количество элементов, записанных в массив

Примечание

Использование: После вызова этого метода итератор, на котором он был вызван, должен быть отброшен. Использование итератора после этого вызова не определено и может быть изменено.

Унаследовано от IterableOnceOps

Исходный код@deprecatedOverriding("Это должно всегда перенаправляться на версию метода с 3 аргументами", since = "2.13.4")
def copyToArray[B >: T](xs: Array[B]): Int

Копирует элементы в массив, возвращая количество скопированных элементов.

Заполняет заданный массив xs начиная с индекса start значениями этого набора.

Копирование остановится, как только будут скопированы все элементы этого набора, или будет достигнут конец массива.

Параметры типа
B

тип элементов массива.

Параметры значения
xs

массив для заполнения.

Возвращает

количество элементов, записанных в массив

Примечание

Использование: После вызова этого метода итератор, на котором он был вызван, должен быть отброшен. Использование итератора после этого вызова не определено и может быть изменено.

Унаследовано от IterableOnceOps

Исходный код
def corresponds[B](that: IterableOnce[B])(p: (T, B) => Boolean): Boolean

Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя предикату.

Примечание: не завершится для бесконечных наборов.

Параметры типа
B

тип элементов that

Параметры значения
p

предикат, соотносящий элементы обоих наборов

that

другой набор

Возвращает

true если у обоих наборов одинаковая длина и p(x, y) равно true для всех соответствующих элементов x этого итератора и y that, в противном случае false

Унаследовано от IterableOnceOps

Source
def corresponds[B](that: Seq[B])(p: (T, B) => Boolean): Boolean

Проверяет, удовлетворяет ли каждое элемент этой последовательности условию предиката в отношении соответствующего элемента другой последовательности.

Параметры типа
B

тип элементов that

Параметры значения
p

предикат, который связывает элементы обеих последовательностей

that

другая последовательность

Возвращаемое значение

true , если обе последовательности имеют одинаковую длину и p(x, y) удовлетворяет true для всех соответствующих элементов x этой последовательности и y that, в противном случае false.

Унаследовано от SeqOps

Source
def count(p: T => Boolean): Int

Подсчитывает количество элементов в коллекции, удовлетворяющих предикату.

Примечание: не завершит работу для коллекций бесконечного размера.

Параметры значения
p

предикат для проверки элементов.

Возвращаемое значение

количество элементов, удовлетворяющих предикату p.

Унаследовано от IterableOnceOps

Source
override def diff[B >: T](that: Seq[B]): IndexedSeq[T]

Классы-предки StrictOptimizedSeqOps -> SeqOps
Унаследовано от StrictOptimizedSeqOps

Source
def distinct: IndexedSeq[T]

Выбирает все элементы этой последовательности, игнорируя дубликаты.

Возвращаемое значение

новая последовательность, состоящая из всех элементов этой последовательности без дубликатов.

Унаследовано от SeqOps

Source
override def distinctBy[B](f: T => B): IndexedSeq[T]

Классы-предки StrictOptimizedSeqOps -> StrictOptimizedSeqOps -> SeqOps
Унаследовано от StrictOptimizedSeqOps

Source
override def drop(n: Int): NumericRange[T]

Классы-предки NumericRange -> IndexedSeqOps -> IterableOps -> IterableOnceOps
Унаследовано от NumericRange

Source
override def dropRight(n: Int): IndexedSeq[T]

Часть коллекции без n последних элементов. Для линейных неизменяемых коллекций это должно избежать создания копии.

Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.

Классы-предки StrictOptimizedIterableOps -> IterableOps
Унаследовано от StrictOptimizedIterableOps

Source
def dropWhile(p: T => Boolean): IndexedSeq[T]

Унаследовано от IterableOps

Source
def elementWise: ElementWiseExtractor[Int, T]

Возвращает объект-экстрактор с методом 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

Source
override def empty: IndexedSeq[T]

Классы-предки IterableFactoryDefaults -> IterableOps
Унаследовано от IterableFactoryDefaults

Source
def endsWith[B >: T](that: Iterable[B]): Boolean

Проверяет, заканчивается ли эта последовательность заданной последовательностью.

Примечание: не завершит работу для коллекций бесконечного размера.

Параметры значения
that

тестируемая последовательность

Возвращаемое значение

true , если эта последовательность имеет that в качестве суффикса, false в противном случае.

Унаследовано от SeqOps

Source
override def equals(other: Any): Boolean

Классы-предки NumericRange -> Seq -> Equals -> Any
Унаследовано от NumericRange

Source
def exists(p: T => Boolean): Boolean

Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.

Примечание: может не завершиться для коллекций бесконечного размера.

Параметры значения
p

предикат для проверки элементов.

Возвращаемое значение

true , если заданный предикат p удовлетворяется хотя бы одним элементом этой коллекции, в противном случае false.

Унаследовано от IterableOnceOps

Source
override def filter(pred: T => Boolean): IndexedSeq[T]

Классы-предки StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps

Source
override def filterNot(pred: T => Boolean): IndexedSeq[T]

Классы-предки StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps
END_OF_DOCUMENT_MARKER

Source
def find(p: T => Boolean): Option[T]

Находит первый элемент коллекции, удовлетворяющий предикату, если таковой имеется.

Примечание: может не завершиться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

Параметры значения
p

предикат, используемый для проверки элементов.

Возвращает

значение типа Option, содержащее первый элемент в коллекции, который удовлетворяет p, или None, если такового не существует.

Унаследовано от IterableOnceOps

Source
def findLast(p: T => Boolean): Option[T]

Находит последний элемент последовательности, удовлетворяющий предикату, если таковой имеется.

Примечание: не завершится для коллекций бесконечного размера.

Параметры значения
p

предикат, используемый для проверки элементов.

Возвращает

значение типа Option, содержащее последний элемент в последовательности, который удовлетворяет p, или None, если такового не существует.

Унаследовано от SeqOps

Source
override def flatMap[B](f: T => IterableOnce[B]): IndexedSeq[B]

Классы определений StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps

Source
override def flatten[B](implicit toIterableOnce: T => IterableOnce[B]): IndexedSeq[B]

Классы определений StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps

Source
def fold[A1 >: T](z: A1)(op: (A1, A1) => A1): A1

Складывает элементы этой коллекции с использованием указанного ассоциативного бинарного оператора. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.

Порядок выполнения операций над элементами не определен и может быть не детерминированным.

Примечание: не завершится для коллекций бесконечного размера.

Параметры типа
A1

параметр типа для бинарного оператора, являющийся надтипом A.

Параметры значения
op

бинарный оператор, который должен быть ассоциативным.

z

нейтральный элемент для операции слияния; может добавляться к результату произвольное число раз, и не должен менять результат (например, Nil для конкатенации списков, 0 для сложения или 1 для умножения).

Возвращает

результат применения оператора слияния op между всеми элементами и z, или z, если эта коллекция пуста.

Унаследовано от IterableOnceOps

Source
def foldLeft[B](z: B)(op: (B, T) => B): B

Применяет бинарный оператор к начальному значению и всем элементам этой коллекции слева направо.

Примечание: не завершится для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор является ассоциативным и коммутативным.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

z

начальное значение.

Возвращаемое значение

результат вставки op между последовательными элементами этой коллекции, слева направо с начальным значением z слева: op(...op(z, x1), x2, ..., xn) где x1, ..., xn являются элементами этой коллекции. Возвращает z если эта коллекция пустая.

Унаследовано от IterableOnceOps

Исходный код
override def foldRight[B](z: B)(op: (T, B) => B): B

Классы-предки IndexedSeqOps -> IterableOnceOps
Унаследовано от IndexedSeqOps

Исходный код
def forall(p: T => Boolean): Boolean

Проверяет, выполняется ли предикат для всех элементов этой коллекции.

Примечание: может не завершаться для коллекций бесконечного размера.

Параметры значения
p

предикат, используемый для проверки элементов.

Возвращаемое значение

true если эта коллекция пуста или указанный предикат p выполняется для всех элементов этой коллекции, в противном случае false.

Унаследовано от IterableOnceOps

Исходный код
override def foreach[@specialized U](f: T => U): Unit

Классы-предки NumericRange -> IterableOnceOps
Унаследовано от NumericRange

Исходный код
protected def fromSpecific(coll: IterableOnce[T]): IndexedSeq[T]

Унаследовано от IterableFactoryDefaults

Исходный код
def groupBy[K](f: T => K): Map[K, IndexedSeq[T]]

Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором.

Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.

Параметры типа
K

тип ключей, возвращаемых функцией-дискриминатором.

Параметры значения
f

функция-дискриминатор.

Возвращаемое значение

Карта из ключей к итерируемым коллекциям, которая удовлетворяет следующему инварианту:

(xs groupBy f)(k) = xs filter (x => f(x) == k)

То есть, каждый ключ k связан с итерируемой коллекцией тех элементов x для которых f(x) равно k.

Унаследовано от IterableOps

Исходный код
def groupMap[K, B](key: T => K)(f: T => B): Map[K, IndexedSeq[B]]

Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором 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)

Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.

Параметры типа
B

тип значений, возвращаемых функцией преобразования

K

тип ключей, возвращаемых функцией дискриминации

Параметры значения
f

функция преобразования элементов

ключ

функция дискриминации

Унаследовано от IterableOps

Источник
def groupMapReduce[K, B](key: T => K)(f: T => 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

Источник
def grouped(size: Int): Iterator[IndexedSeq[T]]

Разделяет элементы на итерируемые коллекции фиксированного размера.

Параметры значения
size

количество элементов в группе

Возвращает

Итератор, производящий итерируемые коллекции размером size, за исключением последней, которая будет меньше size size, если элементы не делятся равномерно.

См. также

scala.collection.Iterator, метод grouped

Унаследовано от IterableOps

Источник
override def head: T

Классы-предки NumericRange -> IndexedSeqOps -> IterableOps
Унаследовано от NumericRange

Источник
override def headOption: Option[T]

Классы-предки IndexedSeqOps -> IterableOps
Унаследовано от IndexedSeqOps

Источник@deprecatedOverriding("Override indexOf(elem, from) instead - indexOf(elem) calls indexOf(elem, 0)", "2.13.0")
def indexOf[B >: T](elem: B): Int

Находит индекс первого вхождения некоторого значения в эту последовательность.

Параметры типа
B

тип элемента elem.

Параметры значения
elem

значение элемента для поиска.

Возвращает

индекс >= 0 первого элемента этой последовательности, который равен (как определяется ==) элементу elem, или -1, если такого элемента нет.

Унаследовано от SeqOps

Источник
def indexOf[B >: T](elem: B, from: Int): Int

Находит индекс первого вхождения некоторого значения в этой последовательности после или на определённом индексе начала.

Параметры типа
B

тип элемента elem.

Параметры значения
elem

значение элемента для поиска.

from

индекс начала

Возвращает

индекс >= from первого элемента этой последовательности, который равен (как определяется ==) элементу elem, или -1, если такого элемента нет.

Унаследовано от SeqOps

Источник@deprecatedOverriding("Override indexOfSlice(that, from) instead - indexOfSlice(that) calls indexOfSlice(that, 0)", "2.13.0")
def indexOfSlice[B >: T](that: Seq[B]): Int

Находит первый индекс, где эта последовательность содержит заданную последовательность как срез.

Примечание: может не завершаться для коллекций бесконечного размера.

Параметры значения
that

последовательность для проверки

Возвращает

первый индекс >= 0 такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1 если такой подпоследовательности нет.

Унаследовано от SeqOps

Источник
def indexOfSlice[B >: T](that: Seq[B], from: Int): Int

Находит первый индекс после или на индексе начала, где эта последовательность содержит заданную последовательность как срез.

Примечание: может не завершаться для коллекций бесконечного размера.

Параметры значения
from

индекс начала

that

последовательность для проверки

Возвращает

первый индекс >= from такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1 если такой подпоследовательности нет.

Унаследовано от SeqOps

Источник@deprecatedOverriding("Override indexWhere(p, from) instead - indexWhere(p) calls indexWhere(p, 0)", "2.13.0")
def indexWhere(p: T => Boolean): Int

Находит индекс первого элемента, удовлетворяющего некоторому предикату.

Примечание: может не завершаться для коллекций бесконечного размера.

Параметры значения
p

предикат, используемый для проверки элементов.

Возвращает

индекс >= 0 первого элемента этой последовательности, удовлетворяющего предикату p, или -1, если такого элемента нет.

Унаследовано от SeqOps

Источник
def indexWhere(p: T => Boolean, from: Int): Int

Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на определенном индексе начала.

Примечание: может не завершаться для коллекций бесконечного размера.

Параметры значения
from

индекс начала

p

предикат, используемый для проверки элементов.

Возвращает

индекс >= from первого элемента этой последовательности, удовлетворяющего предикату p, или -1, если такого элемента нет.

Унаследовано от SeqOps

Источник
def indices: Range

Производит диапазон всех индексов этой последовательности.

Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.

Возвращает

значение Range от 0 до значения на единицу меньше длины этой последовательности.

Унаследовано от SeqOps

Источник
override def init: NumericRange[T]

Definition Classes NumericRange -> IterableOps
Inherited from NumericRange

Source
def inits: Iterator[IndexedSeq[T]]

Итерирует по начальным частям этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее — пустым итерируемым набором, а промежуточные значения — результатами последовательных применений init.

Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.

Returns

итератор по всем начальным частям этого итерируемого набора

Example

List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)

Inherited from IterableOps

Source
override def intersect[B >: T](that: Seq[B]): IndexedSeq[T]

Definition Classes StrictOptimizedSeqOps -> SeqOps
Inherited from StrictOptimizedSeqOps

Source
def isDefinedAt(idx: Int): Boolean

Проверяет, содержит ли этот массив заданный индекс.

Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].

Value parameters
idx

индекс для проверки

Returns

true , если в этом массиве есть элемент в позиции idx, false в противном случае.

Inherited from SeqOps

Source
override def isTraversableAgain: Boolean

Definition Classes IterableOps -> IterableOnceOps
Inherited from IterableOps

Source
override def iterableFactory: SeqFactory[IndexedSeq]

Definition Classes IndexedSeq -> IndexedSeq -> Seq -> Seq -> Iterable -> Iterable -> IterableOps
Inherited from IndexedSeq

Source
override def iterator: Iterator[T]

Definition Classes NumericRange -> IndexedSeqOps -> IterableOnce
Inherited from NumericRange

Source
override def knownSize: Int

Definition Classes IndexedSeqOps -> IterableOnce
Inherited from IndexedSeqOps

Source
override def last: T

Definition Classes NumericRange -> IndexedSeqOps -> IterableOps
Inherited from NumericRange

Source
def lastIndexOf[B >: T](elem: B, end: Int): Int

Находит индекс последнего вхождения некоторого значения в этом массиве до или на заданном индексе конца.

Примечание: не завершится для коллекций бесконечного размера.

Type parameters
B

тип элемента elem.

Value parameters
elem

значение элемента для поиска.

end

индекс конца.

Returns

индекс <= end последнего элемента этого массива, который равен (как определено ==) elem, или -1, если такового нет.

Inherited from SeqOps

Source@deprecatedOverriding("Override lastIndexOfSlice(that, end) instead - lastIndexOfSlice(that) calls lastIndexOfSlice(that, Int.MaxValue)", "2.13.0")
def lastIndexOfSlice[B >: T](that: Seq[B]): Int

Находит последний индекс, где этот массив содержит заданный массив как срез.

Примечание: не завершится для коллекций бесконечного размера.

Value parameters
that

массив для проверки

Returns

последний индекс, такой что элементы этого массива, начиная с этого индекса, соответствуют элементам массива that, или -1 если такой подпоследовательности нет.

Inherited from SeqOps

Source
def lastIndexOfSlice[B >: T](that: Seq[B], end: Int): Int

Находит последний индекс перед или на заданном индексе конца, где этот массив содержит заданный массив как срез.

Примечание: не завершится для коллекций бесконечного размера.

Value parameters
end

индекс конца

that

массив для проверки

Returns

последний индекс <= end такой, что элементы этого массива, начиная с этого индекса, соответствуют элементам массива that, или -1 если такой подпоследовательности нет.

Inherited from SeqOps

Source@deprecatedOverriding("Override lastIndexWhere(p, end) instead - lastIndexWhere(p) calls lastIndexWhere(p, Int.MaxValue)", "2.13.0")
def lastIndexWhere(p: T => Boolean): Int

Находит индекс последнего элемента, удовлетворяющего некоторому предикату.

Примечание: не завершится для коллекций бесконечного размера.

Value parameters
p

предикат, используемый для проверки элементов.

Returns

индекс последнего элемента этого массива, удовлетворяющего предикату p, или -1, если такового нет.

Inherited from SeqOps

Source
def lastIndexWhere(p: T => Boolean, end: Int): Int

Находит индекс последнего элемента, удовлетворяющего некоторому предикату перед или на заданном индексе конца.

Примечание: не завершится для коллекций бесконечного размера.

END_OF_DOCUMENT_MARKER
Параметры значения
p

предикат, используемый для проверки элементов.

Возвращает

индекс <= end последнего элемента этой последовательности, удовлетворяющего предикату p, или -1, если таковой не существует.

Унаследовано от SeqOps

Исходный код
def lastOption: Option[T]

Возвращает последний элемент.

Примечание: может возвращать разные результаты для разных запусков, если тип базового набора данных не упорядочен.

Возвращает

последний элемент этой итерируемой коллекции$, если она непустая, None если она пустая.

Унаследовано от IterableOps

Исходный код
def lazyZip[B](that: Iterable[B]): LazyZip2[T, B, Inclusive[T]]

Аналогично 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)
Параметры типа
B

тип второго элемента в каждой возможной паре

Параметры значения
that

итерируемый набор данных, предоставляющий второй элемент каждой возможной пары

Возвращает

дескриптор LazyZip2, позволяющий выполнять строгие операции над лениво вычисляемыми парами или объединёнными вызовами lazyZip. Также поддерживается неявное преобразование в Iterable[(A, B)].

Унаследовано от Iterable

Исходный код
final override def lengthCompare(that: Iterable[_]): Int

Классы-определения IndexedSeqOps -> SeqOps
Унаследовано от IndexedSeqOps

Исходный код
final override def lengthCompare(len: Int): Int

Классы-определения IndexedSeqOps -> SeqOps
Унаследовано от IndexedSeqOps

Исходный код@inline
final def lengthIs: SizeCompareOps

Возвращает значение-класс, содержащий операции для сравнения длины этой последовательности со значением теста.

Эти операции реализуются с помощью lengthCompare(Int) и позволяют использовать следующие более удобочитаемые варианты:

this.lengthIs < len     // this.lengthCompare(len) < 0
this.lengthIs <= len    // this.lengthCompare(len) <= 0
this.lengthIs == len    // this.lengthCompare(len) == 0
this.lengthIs != len    // this.lengthCompare(len) != 0
this.lengthIs >= len    // this.lengthCompare(len) >= 0
this.lengthIs > len     // this.lengthCompare(len) > 0
Унаследовано от SeqOps

Исходный код
def lift: Int => Option[T]

Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.

Возвращает

функцию, которая принимает аргумент x к Some(this(x)) если this определена для x, и к None в противном случае.

См. также

Function.unlift

Унаследовано от PartialFunction

Исходный код
override def map[B](f: T => B): IndexedSeq[B]

Классы-определения StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps

Исходный код
override def max[T1 >: T](implicit ord: Ordering[T1]): T

Классы-определения NumericRange -> IterableOnceOps
Унаследовано от NumericRange

Исходный код
def maxBy[B](f: T => B)(implicit cmp: Ordering[B]): T

Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.

Примечание: не завершит работу для бесконечных коллекций.

Параметры типа
B

Тип результата функции f.

Параметры значения
cmp

Порядок, используемый для сравнения элементов.

f

Функция измерения.

Возвращает

первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка cmp.

Исключения
UnsupportedOperationException

если эта коллекция пуста.

Унаследовано от IterableOnceOps

Исходный код
def maxByOption[B](f: T => B)(implicit cmp: Ordering[B]): Option[T]

Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.

Примечание: не завершит работу для бесконечных коллекций.

Параметры типа
B

Тип результата функции f.

Параметры значения
cmp

Порядок, используемый для сравнения элементов.

f

Функция измерения.

Возвращает

значение option, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка cmp.

Унаследовано от IterableOnceOps

Исходный код
def maxOption[B >: T](implicit ord: Ordering[B]): Option[T]

Находит наибольший элемент.

Примечание: не завершит работу для бесконечных коллекций.

Параметры типа
B

Тип, по которому определён порядок.

Параметры значения
ord

Порядок, используемый для сравнения элементов.

Возвращает

значение option, содержащее наибольший элемент этой коллекции относительно порядка ord.

Унаследовано от IterableOnceOps

Исходный код
override def min[T1 >: T](implicit ord: Ordering[T1]): T

Классы-определения NumericRange -> IterableOnceOps
Унаследовано от NumericRange

Исходный код
def minBy[B](f: T => B)(implicit cmp: Ordering[B]): T

Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.

Примечание: не завершит работу для бесконечных коллекций.

Тип параметров
B

Тип результата функции f.

Параметры значений
cmp

Порядок, используемый для сравнения элементов.

f

Функция измерения.

Возвращает

первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка cmp.

Выбрасывает
UnsupportedOperationException

если этот набор пуст.

Унаследовано от IterableOnceOps

Источник
def minByOption[B](f: T => B)(implicit cmp: Ordering[B]): Option[T]

Находит первый элемент, который дает наименьшее значение, измеренное функцией f.

Примечание: не будет завершаться для коллекций бесконечного размера.

Тип параметров
B

Тип результата функции f.

Параметры значений
cmp

Порядок, используемый для сравнения элементов.

f

Функция измерения.

Возвращает

значение опции, содержащей первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка cmp.

Унаследовано от IterableOnceOps

Источник
def minOption[B >: T](implicit ord: Ordering[B]): Option[T]

Находит наименьший элемент.

Примечание: не будет завершаться для коллекций бесконечного размера.

Тип параметров
B

Тип, для которого определен порядок.

Параметры значений
ord

Порядок, используемый для сравнения элементов.

Возвращает

значение опции, содержащей наименьший элемент этого набора относительно порядка ord.

Унаследовано от IterableOnceOps

Источник@inline
final def mkString: String

Отображает все элементы этого набора в строке.

Делегирует addString, который может быть переопределен.

Возвращает

строковое представление этого набора. В результирующей строке строковые представления (согласно методу toString) всех элементов этого набора следуют друг за другом без разделителя.

Унаследовано от IterableOnceOps

Источник@inline
final def mkString(sep: String): String

Отображает все элементы этого набора в строке с использованием разделительной строки.

Делегирует addString, который может быть переопределен.

Параметры значений
sep

разделительная строка.

Возвращает

строковое представление этого набора. В результирующей строке строковые представления (согласно методу toString) всех элементов этого набора разделены строкой sep.

Пример

List(1, 2, 3).mkString("|") = "1|2|3"

Унаследовано от IterableOnceOps

Источник
final def mkString(start: String, sep: String, end: String): String

Отображает все элементы этого набора в строке, используя начальную, конечную и разделительные строки.

Делегирует addString, который может быть переопределен.

Параметры значений
end

конечная строка.

sep

разделительная строка.

start

начальная строка.

Возвращает

строковое представление этого набора. Результирующая строка начинается со строки start и заканчивается строкой end. Внутри, строковые представления (согласно методу toString) всех элементов этого набора разделены строкой sep.

Пример

List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"

Унаследовано от IterableOnceOps

Источник
protected def newSpecificBuilder: Builder[T, IndexedSeq[T]]

Унаследовано от IterableFactoryDefaults

Источник@deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
def nonEmpty: Boolean

Проверяет, не пуст ли набор.

Возвращает

true если набор содержит хотя бы один элемент, false в противном случае.

Унаследовано от IterableOnceOps

Источник
def orElse[A1 <: Int, B1 >: T](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]

Компонует эту частичную функцию с частичной функцией резервного копирования, которая применяется там, где эта частичная функция не определена.

Тип параметров
A1

тип аргумента функции резервного копирования

B1

тип результата функции резервного копирования

Параметры значений
that

функция резервного копирования

Возвращает

частичная функция, у которой область значений является объединением областей значений этой частичной функции и that. Результирующая частичная функция принимает x к this(x), где this определена, и к that(x) в противном случае.

Унаследовано от PartialFunction

Источник
override def padTo[B >: T](len: Int, elem: B): IndexedSeq[B]

Классы определений StrictOptimizedSeqOps -> SeqOps
Унаследовано от StrictOptimizedSeqOps

Источник
override def partition(p: T => Boolean): (IndexedSeq[T], IndexedSeq[T])

Классы определений StrictOptimizedIterableOps -> IterableOps
Унаследовано от StrictOptimizedIterableOps

Источник
override def partitionMap[A1, A2](f: T => Either[A1, A2]): (IndexedSeq[A1], IndexedSeq[A2])

Классы определений StrictOptimizedIterableOps -> IterableOps
Унаследовано от StrictOptimizedIterableOps
END_OF_DOCUMENT_MARKER

Source
override def patch[B >: T](from: Int, other: IterableOnce[B], replaced: Int): IndexedSeq[B]

Definition Classes StrictOptimizedSeqOps -> SeqOps
Inherited from StrictOptimizedSeqOps

Source
def permutations: Iterator[IndexedSeq[T]]

Итерируется по различным перестановкам.

Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.

Возвращает

Итератор, который проходит по различным перестановкам этой последовательности.

Пример

"abb".permutations = Iterator(abb, bab, bba)

Унаследовано от SeqOps

Source
override def prepended[B >: T](elem: B): IndexedSeq[B]

Definition Classes StrictOptimizedSeqOps -> SeqOps
Inherited from StrictOptimizedSeqOps

Source
override def prependedAll[B >: T](prefix: IterableOnce[B]): IndexedSeq[B]

Definition Classes StrictOptimizedSeqOps -> SeqOps
Inherited from StrictOptimizedSeqOps

Source
def product[B >: T](implicit num: Numeric[B]): B

Перемножает элементы этой коллекции.

Примечание: не будет завершаться для коллекций бесконечного размера.

Параметры типа
B

тип результата оператора *.

Параметры значения
num

явный параметр, определяющий набор числовых операций, который включает оператор *, используемый для получения произведения.

Возвращает

произведение всех элементов этой коллекции относительно оператора * в num.

Унаследовано от IterableOnceOps

Source
def reduce[B >: T](op: (B, B) => B): B

Уменьшает элементы этой коллекции, используя указанный ассоциативный бинарный оператор.

Порядок выполнения операций над элементами не определен и может быть не детерминированным.

Параметры типа
B

Параметр типа для бинарного оператора, являющийся надтипом A.

Параметры значения
op

Бинарный оператор, который должен быть ассоциативным.

Возвращает

Результат применения оператора reduce op между всеми элементами, если коллекция не пуста.

Исключения
UnsupportedOperationException

если эта коллекция пуста.

Унаследовано от IterableOnceOps

Source
def reduceLeft[B >: T](op: (B, T) => B): B

Применяет бинарный оператор ко всем элементам этой коллекции слева направо.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

Возвращает

результат вставки op между последовательными элементами этой коллекции слева направо: op( op( ... op(x1, x2) ..., xn-1), xn), где x1, ..., xn - элементы этой коллекции.

Исключения
UnsupportedOperationException

если эта коллекция пуста.

Унаследовано от IterableOnceOps

Source
def reduceLeftOption[B >: T](op: (B, T) => B): Option[B]

Необязательно применяет бинарный оператор ко всем элементам этой коллекции слева направо.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

Возвращает

значение опции, содержащее результат reduceLeft(op) , если эта коллекция не пуста, None в противном случае.

Унаследовано от IterableOnceOps

Source
def reduceOption[B >: T](op: (B, B) => B): Option[B]

Сводит элементы этой коллекции, если таковые имеются, используя указанный ассоциативный бинарный оператор.

Порядок выполнения операций над элементами не определен и может быть не детерминированным.

Параметры типа
B

Параметр типа для бинарного оператора, являющийся надтипом A.

Параметры значения
op

Бинарный оператор, который должен быть ассоциативным.

Возвращает

Значение опции, содержащее результат применения оператора reduce op между всеми элементами, если коллекция не пуста, и None в противном случае.

Унаследовано от IterableOnceOps

Source
def reduceRight[B >: T](op: (T, B) => B): B

Применяет бинарный оператор ко всем элементам этой коллекции справа налево.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.

Параметры типа
B

тип результата бинарного оператора.

Параметры значения
op

бинарный оператор.

Возвращает

результат вставки op между последовательными элементами этой коллекции справа налево: op(x1, op(x2, ..., op(xn-1, xn)...)), где x1, ..., xn - элементы этой коллекции.

Исключения
UnsupportedOperationException

если эта коллекция пуста.

Унаследовано от IterableOnceOps

Source
def reduceRightOption[B >: T](op: (T, B) => B): Option[B]

Необязательно применяет бинарный оператор ко всем элементам этой коллекции справа налево.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.

Тип параметров
B

тип результата бинарной операции.

Параметры значений
op

бинарная операция.

Возвращает

значение опции, содержащее результат reduceRight(op), если эта коллекция непуста, None в противном случае.

Унаследовано от IterableOnceOps

Источник
override def reverse: NumericRange[T]

Классы определения NumericRange -> IndexedSeqOps -> SeqOps
Унаследовано от NumericRange

Источник
override def reverseIterator: Iterator[T]

Классы определения IndexedSeqOps -> SeqOps
Унаследовано от IndexedSeqOps

Источник
override protected def reversed: Iterable[T]

Классы определения IndexedSeqOps -> IterableOnceOps
Унаследовано от IndexedSeqOps

Источник
def runWith[U](action: T => U): Int => Boolean

Комбинирует эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для своих побочных эффектов; ее результат игнорируется.

Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно

if(pf isDefinedAt x) { action(pf(x)); true } else false

за исключением того, что runWith реализуется через applyOrElse и, следовательно, потенциально более эффективно. Использование runWith избегает двойной оценки обработчиков шаблонов и условий для частичных функций-литералов.

Параметры значений
action

функция действия

Возвращает

функция, которая отображает аргументы x в isDefinedAt(x). Результирующая функция выполняет action(this(x)) там, где this определено.

См. также

applyOrElse.

Унаследовано от PartialFunction

Источник
override def sameElements[B >: T](o: IterableOnce[B]): Boolean

Классы определения IndexedSeq -> SeqOps
Унаследовано от IndexedSeq

Источник
def scan[B >: T](z: B)(op: (B, B) => B): IndexedSeq[B]

Вычисляет префиксную сканировку элементов коллекции.

Примечание: нейтральный элемент z может применяться более одного раза.

Тип параметров
B

тип элементов результирующей коллекции

Параметры значений
op

ассоциативная операция для сканирования

z

нейтральный элемент для оператора op

Возвращает

новая итерируемая коллекция, содержащая префиксное сканирование элементов в этой итерируемой коллекции

Унаследовано от IterableOps

Источник
override def scanLeft[B](z: B)(op: (B, T) => B): IndexedSeq[B]

Классы определения StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps

Источник
def scanRight[B](z: B)(op: (T, B) => B): IndexedSeq[B]

Создает коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — это последний кумулятивный результат.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен.

Примечание: даже при применении к представлению или ленивой коллекции он всегда будет принудительно применять элементы.

Пример:

List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
Тип параметров
B

тип элементов в результирующей коллекции

Параметры значений
op

бинарная операция, применяемая к промежуточному результату и элементу

z

начальное значение

Возвращает

коллекция с промежуточными результатами

Унаследовано от IterableOps

Источник
override def search[B >: T](elem: B, from: Int, to: Int)(implicit ord: Ordering[B]): SearchResult

Классы определения IndexedSeqOps -> SeqOps
Унаследовано от IndexedSeqOps

Источник
override def search[B >: T](elem: B)(implicit ord: Ordering[B]): SearchResult

Классы определения IndexedSeqOps -> SeqOps
Унаследовано от IndexedSeqOps

Источник
def segmentLength(p: T => Boolean, from: Int): Int

Вычисляет длину самого длинного сегмента, начинающегося с определенного индекса, и элементы которого удовлетворяют определенному предикату.

Примечание: может не завершиться для коллекций бесконечного размера.

Параметры значений
from

индекс, с которого начинается поиск.

p

предикат, используемый для проверки элементов.

Возвращает

длину самого длинного сегмента этой последовательности, начинающегося с индекса from, где каждый элемент сегмента удовлетворяет предикату p.

Унаследовано от SeqOps

Источник
final def segmentLength(p: T => Boolean): Int

Вычисляет длину самого длинного сегмента, начинающегося с первого элемента, и элементы которого удовлетворяют определенному предикату.

Примечание: может не завершиться для коллекций бесконечного размера.

Параметры значений
p

предикат, используемый для проверки элементов.

Возвращает

длину самого длинного сегмента этой последовательности, начинающегося с первого элемента, где каждый элемент сегмента удовлетворяет предикату p.

Унаследовано от SeqOps

Источник
final override def size: Int

Классы определений SeqOps -> IterableOnceOps
Унаследовано от SeqOps

Источник
final override def sizeCompare(that: Iterable[_]): Int

Классы определений SeqOps -> IterableOps
Унаследовано от SeqOps

Источник
final override def sizeCompare(otherSize: Int): Int

Классы определений SeqOps -> IterableOps
Унаследовано от SeqOps

Источник@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
Унаследовано от IterableOps

Источник
override def slice(from: Int, until: Int): IndexedSeq[T]

Классы определений IndexedSeqOps -> IndexedSeqOps -> IterableOps -> IterableOnceOps
Унаследовано от IndexedSeqOps

Источник
def sliding(size: Int, step: Int): Iterator[IndexedSeq[T]]

Группирует элементы в блоки фиксированного размера, передавая «скользящее окно» по ним (в отличие от их разбиения, как это делается в grouped).

Возвращаемый итератор будет пустым при вызове на пустом наборе. Последний элемент, который производит итератор, может быть меньше размера окна, когда исходный набор не исчерпан окном до его окончания и его последний элемент не пропущен шагом перед ним.

Параметры значений
size

число элементов в группе

step

расстояние между первыми элементами последовательных групп

Возвращает

Итератор, создающий итерируемые наборы размера size, за исключением последнего элемента (который может быть единственным элементом), который будет меньше, если оставшихся элементов для группировки меньше, чем size.

См. также

scala.collection.Iterator, метод sliding

Пример

List(1, 2, 3, 4, 5).sliding(2, 2) = Iterator(List(1, 2), List(3, 4), List(5))

List(1, 2, 3, 4, 5, 6).sliding(2, 3) = Iterator(List(1, 2), List(4, 5))

Унаследовано от IterableOps

Источник
def sliding(size: Int): Iterator[IndexedSeq[T]]

Группирует элементы в блоки фиксированного размера, передавая «скользящее окно» по ним (в отличие от их разбиения, как это делается в grouped).

Пустой набор возвращает пустой итератор, а непустой набор, содержащий меньше элементов, чем размер окна, возвращает итератор, который будет производить исходный набор как свой единственный элемент.

Параметры значений
size

число элементов в группе

Возвращает

Итератор, создающий итерируемые наборы размера size, за исключением непустого набора с менее чем size элементами, который возвращает итератор, создающий сам исходный набор в качестве своего единственного элемента.

См. также

scala.collection.Iterator, метод sliding

Пример

List().sliding(2) = empty iterator

List(1).sliding(2) = Iterator(List(1))

List(1, 2).sliding(2) = Iterator(List(1, 2))

List(1, 2, 3).sliding(2) = Iterator(List(1, 2), List(2, 3))

Унаследовано от IterableOps

Источник
def sortBy[B](f: T => B)(implicit ord: Ordering[B]): IndexedSeq[T]

Сортирует этот массив в соответствии с упорядочением, полученным из преобразования явно заданного упорядочения с функцией преобразования.

Примечание: не завершит работу для бесконечных наборов.

Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно создавать элементы.

Сортировка стабильна. То есть элементы, которые равны (как определяется ord.compare), отображаются в том же порядке в отсортированном наборе, что и в исходном.

Параметры типов
B

целевой тип преобразования f, и тип, где определено упорядочение ord.

Параметры значений
f

функция преобразования, отображающая элементы в другую область B.

ord

упорядочение, предполагаемое в области B.

Возвращает

массив, состоящий из элементов этого массива, отсортированных в соответствии с упорядочением, где x < y если ord.lt(f(x), f(y)).

См. также

scala.math.Ordering

Пример
val words = "The quick brown fox jumped over the lazy dog".split(' ')
// this works because scala.Ordering will implicitly provide an Ordering[Tuple2[Int, Char]]
words.sortBy(x => (x.length, x.head))
res0: Array[String] = Array(The, dog, fox, the, lazy, over, brown, quick, jumped)
Унаследовано от SeqOps

Источник
def sortWith(lt: (T, T) => Boolean): IndexedSeq[T]

Сортирует этот массив в соответствии с функцией сравнения.

Примечание: не завершит работу для бесконечных наборов.

Примечание: Даже при применении к представлению или ленивому набору он всегда будет принудительно создавать элементы.

Сортировка стабильна. То есть элементы, которые равны (как определяется lt), отображаются в том же порядке в отсортированном наборе, что и в исходном.

Параметры значений
lt

функция сравнения, которая проверяет, предшествует ли её первый аргумент второму аргументу в требуемом порядке.

Возвращает

массив, состоящий из элементов этого массива, отсортированных в соответствии с функцией сравнения lt.

Пример
List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
List("Bob", "John", "Steve", "Tom")
Унаследовано от SeqOps

Источник
override def sorted[B >: T](implicit ord: Ordering[B]): IndexedSeq[T]

Классы определений StrictOptimizedSeqOps -> SeqOps
Унаследовано от StrictOptimizedSeqOps

Источник
override def span(p: T => Boolean): (IndexedSeq[T], IndexedSeq[T])

Классы определений StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps

Источник
override def splitAt(n: Int): (NumericRange[T], NumericRange[T])

Классы определений NumericRange -> IterableOps -> IterableOnceOps
Унаследовано от NumericRange
END_OF_DOCUMENT_MARKER

Source
def startsWith[B >: T](that: IterableOnce[B], offset: Int): Boolean

Проверяет, содержит ли эта последовательность заданную последовательность в заданном индексе.

Примечание: Если и получаемый объект this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.

Параметры значения
offset

индекс, в котором ищется последовательность.

that

тестируемая последовательность

Возвращает

true если последовательность that содержится в этой последовательности по индексу offset, в противном случае false.

Унаследовано от SeqOps

Source
override def stepper[S <: Stepper[_]](implicit shape: StepperShape[T, S]): S & EfficientSplit

Классы определения NumericRange -> IndexedSeqOps -> IterableOnce
Унаследовано от NumericRange

Source
override def sum[B >: T](implicit num: Numeric[B]): B

Классы определения NumericRange -> IterableOnceOps
Унаследовано от NumericRange

Source
override def tail: NumericRange[T]

Классы определения NumericRange -> IterableOps
Унаследовано от NumericRange

Source
def tails: Iterator[IndexedSeq[T]]

Итерируется по хвостам этого итерируемого набора коллекций. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений tail.

Возвращает

итератор по всем хвостам этой итерируемой коллекции

Пример

List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)

Унаследовано от IterableOps

Source
override def take(n: Int): NumericRange[T]

Классы определения NumericRange -> IndexedSeqOps -> IterableOps -> IterableOnceOps
Унаследовано от NumericRange

Source
override def takeRight(n: Int): IndexedSeq[T]

Коллекция, содержащая последние n элементы этой коллекции.

Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.

Классы определения StrictOptimizedIterableOps -> IterableOps
Унаследовано от StrictOptimizedIterableOps

Source
def takeWhile(p: T => Boolean): IndexedSeq[T]

Берет самую длинную префиксную последовательность элементов, удовлетворяющих предикату.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

Параметры значения
p

предикат для проверки элементов.

Возвращает

самый длинный префикс этой итерируемой коллекции, элементы которого удовлетворяют предикату p.

Унаследовано от IterableOps

Source
override def tapEach[U](f: T => U): IndexedSeq[T]

Классы определения StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Унаследовано от StrictOptimizedIterableOps

Source
def to[C1](factory: Factory[T, C1]): C1

Используя фабрику коллекций factory, преобразуйте эту коллекцию в соответствующее представление для текущего типа элементов A. Примеры использования:

xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]

Унаследовано от IterableOnceOps

Source
def toArray[B >: T : ClassTag]: Array[B]

Преобразовать коллекцию в массив.

Примечание реализации: НЕ вызывайте Array.from из этого метода.

Унаследовано от IterableOnceOps

Source@inline
final def toBuffer[B >: T]: Buffer[B]

Унаследовано от IterableOnceOps

Source
final override def toIndexedSeq: IndexedSeq[T]

Классы определения IndexedSeq -> IterableOnceOps
Унаследовано от IndexedSeq

Source
def toList: List[T]

Унаследовано от IterableOnceOps

Source
def toMap[K, V](implicit ev: T <:< (K, V)): Map[K, V]

Унаследовано от IterableOnceOps

Source
final override def toSeq: Inclusive[T]

Классы определения Seq -> IterableOnceOps
Унаследовано от Seq

Source
def toSet[B >: T]: Set[B]

Унаследовано от IterableOnceOps
END_OF_DOCUMENT_MARKER

Source
override def toString: String

Definition Classes ЧисловойДиапазон -> Последовательность -> Функция1 -> Итерируемый -> Любой
Inherited from ЧисловойДиапазон

Source
def toVector: Вектор[T]

Inherited from IterableOnceOps

Source
def transpose[B](implicit asIterable: T => Iterable[B]): ИндексированныйПоследовательность[ИндексированныйПоследовательность[B]]

Транспонирует это итерируемое множество итерируемых множеств в итерируемое множество итерируемых множеств.

Тип результирующего множества будет определяться статическим типом итерируемого множества. Например:

val xs = List(
           Set(1, 2, 3),
           Set(4, 5, 6)).transpose
// xs == List(
//         List(1, 4),
//         List(2, 5),
//         List(3, 6))

val ys = Vector(
           List(1, 2, 3),
           List(4, 5, 6)).transpose
// ys == Vector(
//         Vector(1, 4),
//         Vector(2, 5),
//         Vector(3, 6))

Примечание: Даже при применении к представлению или ленивому множеству элементы всегда будут принудительно вычисляться.

Type parameters
B

тип элементов каждого итерируемого множества.

Value parameters
asIterable

явное преобразование, которое утверждает, что тип элемента этого итерируемого множества является Iterable.

Returns

двумерное итерируемое множество итерируемых множеств, в котором n-я строка является n-м столбцом этого итерируемого множества.

Throws
IllegalArgumentException

если все множества в этом итерируемом множестве не имеют одинаковый размер.

Inherited from IterableOps

Source
def unapply(a: Целое): Вариант[T]

Попытка извлечь B из A в выражении сопоставления с образцом.

Inherited from PartialFunction

Source
override def unzip[A1, A2](implicit asPair: T => (A1, A2)): (ИндексированныйПоследовательность[A1], ИндексированныйПоследовательность[A2])

Definition Classes StrictOptimizedIterableOps -> IterableOps
Inherited from StrictOptimizedIterableOps

Source
override def unzip3[A1, A2, A3](implicit asTriple: T => (A1, A2, A3)): (ИндексированныйПоследовательность[A1], ИндексированныйПоследовательность[A2], ИндексированныйПоследовательность[A3])

Definition Classes StrictOptimizedIterableOps -> IterableOps
Inherited from StrictOptimizedIterableOps

Source
override def updated[B >: T](index: Целое, elem: B): ИндексированныйПоследовательность[B]

Definition Classes StrictOptimizedSeqOps -> SeqOps
Inherited from StrictOptimizedSeqOps

Source
override def view: IndexedSeqView[T]

Definition Classes IndexedSeqOps -> SeqOps -> IterableOps
Inherited from IndexedSeqOps

Source
def withFilter(p: T => Булево): WithFilter[T, ИндексированныйПоследовательность]

Создает нестрогий фильтр этого итерируемого множества.

Примечание: разница между c filter p и c withFilter p заключается в том, что первый создает новое множество, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.

Примечание: результаты могут отличаться при разных запусках, если только тип базового множества не упорядочен.

Value parameters
p

предикат, используемый для проверки элементов.

Returns

объект класса WithFilter, который поддерживает map, flatMap, foreach, и withFilter операции. Все эти операции применяются к тем элементам этого итерируемого множества, которые удовлетворяют предикату p.

Inherited from IterableOps

Source
override def zip[B](that: IterableOnce[B]): ИндексированныйПоследовательность[(T, B)]

Definition Classes StrictOptimizedIterableOps -> IterableOps
Inherited from StrictOptimizedIterableOps

Source
def zipAll[A1 >: T, B](that: Iterable[B], thisElem: A1, thatElem: B): ИндексированныйПоследовательность[(A1, B)]

Возвращает итерируемое множество, сформированное из этого итерируемого множества и другого итерируемого множества, объединяя соответствующие элементы парами. Если одно из двух множеств короче другого, используются заполнительные элементы для расширения более короткого множества до длины более длинного.

Value parameters
that

итерируемое множество, предоставляющее вторую половину каждой пары результатов

thatElem

элемент, используемый для заполнения результата, если that короче этого итерируемого множества.

thisElem

элемент, используемый для заполнения результата, если это итерируемое множество короче that.

Returns

новое множество типа That, содержащее пары, состоящие из соответствующих элементов этого итерируемого множества и that. Длина возвращаемого множества — максимальная из длин этого итерируемого множества и that. Если это итерируемое множество короче that, используются значения thisElem для заполнения результата. Если that короче этого итерируемого множества, используются значения thatElem для заполнения результата.

Inherited from IterableOps

Source
override def zipWithIndex: ИндексированныйПоследовательность[(T, Целое)]

Definition Classes StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps
Inherited from StrictOptimizedIterableOps

Inherited fields

Source
lazy override val hashCode: Целое

Inherited from ЧисловойДиапазон

Source
lazy override val isEmpty: Булево

Унаследованно от NumericRange

Источник
val isInclusive: Boolean

Унаследованно от NumericRange

Источник
lazy override val length: Int

Унаследованно от NumericRange

© 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/immutable/NumericRange$$Inclusive.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API