Spec-Zone.ru › Scala 3.1

Класс scala.collection.Drop

Исходный код

@SerialVersionUID(3L)
class Drop[A](underlying: SomeSeqOps[A], n: Int) extends Drop[A] with SeqView[A]

Надтипы
Трейт SeqView[A]
Трейт SeqOps[A, View, View[A]]
Класс Drop[A]
Класс AbstractView[A]
Трейт View[A]
Трейт Serializable
Класс AbstractIterable[A]
Трейт Iterable[A]
Трейт IterableFactoryDefaults[A, View]
Трейт IterableOps[A, View, View[A]]
Трейт IterableOnceOps[A, View, View[A]]
Трейт IterableOnce[A]
Класс Object
Трейт Matchable
Класс Any
Известные подтипы
Класс Drop[A]

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

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

Исходный код
override def drop(n: Int): SeqView[A]

Классы определений SeqView -> IterableOps -> IterableOnceOps

Исходный код
def length: Int

Наследованные методы

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

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

Наследованно из IterableOps

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

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

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

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

Псевдоним для prepended.

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

Наследованно из SeqOps

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

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

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

Наследованно из SeqOps

Исходный код@inline
final def :++[B >: A](suffix: IterableOnce[B]): View[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

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

Классы определений SeqView -> SeqOps
Наследованно из SeqView

Исходный код
def appendedAll[B >: A](suffix: SeqOps[B, AnyConstr, _]): SeqView[B]

Наследованно из SeqView

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

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

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

тип элементов возвращаемого набора.

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

итерируемый объект для добавления.

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

новый набор типа CC[B], который содержит все элементы этой последовательности, за которыми следуют все элементы suffix.

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

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

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

Исходный код
def collectFirst[B](pf: PartialFunction[A, 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[View[A]]

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

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

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

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

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

Пример

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

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

Исходный код
def concat[B >: A](suffix: SeqOps[B, AnyConstr, _]): SeqView[B]

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

Исходный код@inline
final override def concat[B >: A](suffix: IterableOnce[B]): View[B]

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

Исходный код
def contains[A1 >: A](elem: A1): Boolean

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

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

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

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

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

true, если в этой последовательности есть элемент, равный (определяется по ==) elem, false в противном случае.

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

Исходный код
def containsSlice[B >: A](that: Seq[B]): Boolean

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

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

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

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

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

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

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

Исходный код
def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Int

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

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

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

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

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

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

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

start

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

xs

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

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

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

Примечание

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

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

Исходный код@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
def copyToArray[B >: A](xs: Array[B], start: Int): Int

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

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

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

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

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

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

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

xs

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

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

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

Примечание

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

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

Исходный код@deprecatedOverriding("This should always forward to the 3-arg version of this method", since = "2.13.4")
def copyToArray[B >: A](xs: Array[B]): Int

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

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

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

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

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

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

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

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

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

Примечание

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

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

Source
def corresponds[B](that: IterableOnce[B])(p: (A, 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: (A, B) => Boolean): Boolean

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

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

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

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

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

that

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

Возвращает

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

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

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

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

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

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

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

Возвращает

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

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

Source
def diff[B >: A](that: Seq[B]): View[A]

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

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

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

Возвращает

новая последовательность, которая содержит все элементы этой последовательности, за исключением некоторых вхождений элементов, которые также присутствуют в that. Если значение элемента x встречается n раз в that, то первые n вхождений x не будут частью результата, но любые последующие вхождения будут.

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

Source
def distinct: View[A]

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

Возвращает

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

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

Source
def distinctBy[B](f: A => B): View[A]

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

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

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

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

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

Возвращает

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

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

Source
override def dropRight(n: Int): SeqView[A]

Определяющие классы SeqView -> IterableOps
Унаследовано от SeqView

Source
def dropWhile(p: A => Boolean): View[A]

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

Source
override def empty: View[A]

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

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

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

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

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

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

Возвращает

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

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

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

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

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

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

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

Возвращает

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

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

Source
def filter(pred: A => Boolean): View[A]

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

Source
def filterNot(pred: A => Boolean): View[A]

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

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

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

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

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

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

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

Возвращает

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

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

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

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

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

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

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

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

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

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

Source
def flatMap[B](f: A => IterableOnce[B]): View[B]

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

Source
def flatten[B](implicit asIterable: A => IterableOnce[B]): View[B]

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

Source
def fold[A1 >: A](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, A) => B): B

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

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

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

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

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

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

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

z

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

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

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

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

Source
def foldRight[B](z: B)(op: (A, B) => B): B

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

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

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

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

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

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

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

z

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

Возвращает

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

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

Источник
def forall(p: A => Boolean): Boolean

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

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

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

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

Возвращает

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

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

Источник
def foreach[U](f: A => U): Unit

Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.

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

Источник
protected def fromSpecific(coll: IterableOnce[A]): View[A]

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

Источник
def groupBy[K](f: A => K): Map[K, View[A]]

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

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

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

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

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

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

Возвращает

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

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

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

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

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

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

key

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

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

Источник
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)(_ + _)

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

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

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

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

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

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

Возвращает

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

См. также

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

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

Источник
def head: A

Выбирает первый элемент этого итерируемого набора.

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

Возвращает

первый элемент этого итерируемого набора.

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

если итерируемый набор пустой.

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

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

Выбирает первый элемент, если он существует.

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

Возвращает

первый элемент этого итерируемого набора, если он не пустой, None, если он пустой.

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

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

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

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

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

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

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

Возвращает

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

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

Источник
def indexOf[B >: A](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 >: A](that: Seq[B]): Int

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

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

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

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

Возвращает

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

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

Источник
def indexOfSlice[B >: A](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: A => Boolean): Int

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

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

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

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

Возвращает

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

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

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

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

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

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

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

p

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

Возвращает

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

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

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

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

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

Возвращает

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

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

Источник
def init: View[A]

Начальная часть набора без последнего элемента.

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

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

Источник
def inits: Iterator[View[A]]

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

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

Возвращает

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

Пример

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

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

Source
def intersect[B >: A](that: Seq[B]): View[A]

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

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

Последовательность элементов для пересечения.

Возвращает

новая последовательность, содержащая все элементы этой последовательности, которые также присутствуют в that. Если значение элемента x встречается n раз в that, то первые n вхождений x будут сохранены в результате, но все последующие вхождения будут пропущены.

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

Source
def isDefinedAt(idx: Int): Boolean

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

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

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

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

Возвращает

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

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

Source
override def isEmpty: Boolean

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

Source
override def isTraversableAgain: Boolean

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

Source
override def iterableFactory: IterableFactory[View]

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

Source
def iterator: Iterator[A]

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

Source
override def knownSize: Int

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

Source
def last: A

Выбирает последний элемент.

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

Возвращает

Последний элемент этой итерируемой коллекции.

Исключение
NoSuchElementException

Если итерируемая коллекция пуста.

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

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

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

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

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

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

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

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

end

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

Возвращает

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

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

Исходный код@deprecatedOverriding("Замените lastIndexOfSlice(that, end) - lastIndexOfSlice(that) вызывает lastIndexOfSlice(that, Int.MaxValue)", "2.13.0")
def lastIndexOfSlice[B >: A](that: Seq[B]): Int

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

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

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

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

Возвращает

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

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

Исходный код
def lastIndexOfSlice[B >: A](that: Seq[B], end: Int): Int

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

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

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

индекс конца

that

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

Возвращает

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

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

Исходный код@deprecatedOverriding("Замените lastIndexWhere(p, end) - lastIndexWhere(p) вызывает lastIndexWhere(p, Int.MaxValue)", "2.13.0")
def lastIndexWhere(p: A => Boolean): Int

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

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

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

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

Возвращает

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

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

Исходный код
def lastIndexWhere(p: A => Boolean, end: Int): Int

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

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

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

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

Возвращает

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

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

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

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

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

Возвращает

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

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

Source
def lazyZip[B](that: Iterable[B]): LazyZip2[A, B, Drop[A]]

Аналогично 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

Source
def lengthCompare(that: Iterable[_]): Int

Сравнивает длину этой последовательности с размером другого Iterable.

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

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

Возвращает

Значение x, где

x <  0       if this.length <  that.size
x == 0       if this.length == that.size
x >  0       if this.length >  that.size

Метод в данном реализации не вызывает length или size напрямую; его время выполнения равно O(this.length min that.size) вместо O(this.length + that.size). Метод следует переопределять, если вычисление size является быстрым, и knownSize возвращает -1.

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

Source
def lengthCompare(len: Int): Int

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

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

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

Возвращает

Значение x, где

x <  0       if this.length <  len
x == 0       if this.length == len
x >  0       if this.length >  len

Метод в данном реализации не вызывает length напрямую; его время выполнения равно O(length min len) вместо O(length). Метод следует переопределять, если вычисление length является быстрым, и knownSize возвращает -1.

См. также

lengthIs

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

Source@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

Source
override def map[B](f: A => B): SeqView[B]

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

Source
def max[B >: A](implicit ord: Ordering[B]): A

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

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

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

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

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

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

Возвращает

наибольший элемент этой коллекции относительно упорядочения ord.

Исключения
UnsupportedOperationException

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

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

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

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

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

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

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

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

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

f

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

Возвращает

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

Исключения
UnsupportedOperationException

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

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

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

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

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

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

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

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

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

f

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

Возвращает

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

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

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

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

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

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

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

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

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

Возвращает

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

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

Источник
def min[B >: A](implicit ord: Ordering[B]): A

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

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

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

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

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

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

Возвращает

наименьший элемент этой коллекции относительно упорядочения ord.

Исключения
UnsupportedOperationException

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

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

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

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

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

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

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

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

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

f

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

Возвращает

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

Исключения
UnsupportedOperationException

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

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

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

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

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

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

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

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

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

f

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

Возвращает

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

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

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

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

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

Параметры типа
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[A, View[A]]

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

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

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

Возвращает

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

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

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

Копия этой последовательности с добавлением значения элемента до достижения заданной целевой длины.

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

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

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

значение заполнения

len

целевая длина

Возвращает

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

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

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

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

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

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

Источник
def partitionMap[A1, A2](f: A => Either[A1, A2]): (View[A1], View[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))
Параметры типа
A1

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

A2

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

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

функция 'разбиения', отображающая элементы этой итерируемой коллекции в scala.util.Either

Возвращает

пару итерируемых коллекций: первую, содержащую значения, возвращенные f, которые были обернуты в scala.util.Left, и вторую, содержащую значения, обернутые в scala.util.Right.

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

Source
def patch[B >: A](from: Int, other: IterableOnce[B], replaced: Int): View[B]

Создаёт новую последовательность, где фрагмент элементов в этой последовательности заменяется другой последовательностью.

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

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

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

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

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

other

заменяющая последовательность

replaced

количество элементов для удаления в исходной последовательности

Возвращает

новая последовательность, состоящая из всех элементов этой последовательности, за исключением того, что replaced элементов, начиная с from, заменяются всеми элементами other.

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

Source
def permutations: Iterator[View[A]]

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

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

Возвращает

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

Пример

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

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

Source
override def prepended[B >: A](elem: B): SeqView[B]

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

Source
def prependedAll[B >: A](prefix: SeqOps[B, AnyConstr, _]): SeqView[B]

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

Source
def prependedAll[B >: A](prefix: IterableOnce[B]): View[B]

Как и :++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.

Отличается от :++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мнемоника: двоеточие находится на стороне нового типа коллекции.

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

тип элементов возвращаемой коллекции.

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

итерируемый для добавления в начало.

Возвращает

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

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

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

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

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

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

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

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

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

Возвращает

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

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

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

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

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

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

Параметр типа для бинарного оператора, надтипа A.

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

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

Возвращает

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

Исключения
UnsupportedOperationException

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

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

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

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

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

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

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

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

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

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

Возвращает

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

Исключения
UnsupportedOperationException

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

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

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

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

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

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

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

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

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

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

Возвращает

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

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

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

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

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

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

Параметр типа для бинарного оператора, надтипа A.

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

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

Возвращает

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

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

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

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

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

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

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

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

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

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

Возвращает

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

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

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

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

Источник
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]

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

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

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

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

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

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

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

Возвращает

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

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

Источник
override def reverse: SeqView[A]

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

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

Итератор, возвращающий элементы в обратном порядке.

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

Примечание: xs.reverseIterator эквивалентно xs.reverse.iterator, но может быть более эффективным.

Возвращает

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

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

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

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

Источник
def sameElements[B >: A](that: IterableOnce[B]): Boolean

Являются ли элементы этого набора такими же (и в том же порядке), как элементы that?

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

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

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

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

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

тип элементов результирующего набора

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

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

z

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

Возвращает

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

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

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

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

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

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

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

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

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

Пример:

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

тип элементов в результирующем наборе

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

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

z

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

Возвращает

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

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

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

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

Последовательность должна быть отсортирована с использованием того же Ordering перед вызовом; в противном случае результаты будут неопределенными.

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

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

from

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

ord

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

to

индекс, следующий за тем, где поиск заканчивается.

Возвращает

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

См. также

scala.collection.IndexedSeq

scala.math.Ordering

scala.collection.SeqOps, метод sorted

Примечание

если to <= from, область поиска пуста, и возвращается InsertionPoint в from

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

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

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

Последовательность должна быть отсортирована с использованием того же Ordering перед вызовом; в противном случае результаты будут неопределенными.

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

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

ord

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

Возвращает

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

См. также

scala.collection.IndexedSeq

scala.math.Ordering

scala.collection.SeqOps, метод sorted

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

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

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

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

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

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

p

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

Возвращает

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

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

Source
final def segmentLength(p: A => Boolean): Int

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

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

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

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

Возвращает

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

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

Source
final override def size: Int

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

Source
final override def sizeCompare(that: Iterable[_]): Int

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

Source
final override def sizeCompare(otherSize: Int): Int

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

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
Унаследовано от IterableOps

Source
def slice(from: Int, until: Int): View[A]

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

Source
def sliding(size: Int, step: Int): Iterator[View[A]]

Группирует элементы в блоки фиксированного размера, передавая "скользящее окно" над ними (в отличие от их разбиения, как это делается в 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

Source
def sliding(size: Int): Iterator[View[A]]

Группирует элементы в блоки фиксированного размера, передавая "скользящее окно" над ними (в отличие от их разбиения, как это делается в 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

Source
def sortBy[B](f: A => B)(implicit ord: Ordering[B]): View[A]

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

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

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

Сортировка стабильна. То есть, элементы, которые равны (как определяется 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

Source
def sortWith(lt: (A, A) => Boolean): View[A]

Сортирует эту последовательность в соответствии с функцией сравнения.

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

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

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

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

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

Возвращает

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

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

Source
override def sorted[B >: A](implicit ord: Ordering[B]): SeqView[A]

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

Source
def span(p: A => Boolean): (View[A], View[A])

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

Source
override def splitAt(n: Int): (View[A], View[A])

Definition Classes IterableOps -> IterableOnceOps
Inherited from IterableOps

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

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

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

Value parameters
offset

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

that

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

Returns

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

Inherited from SeqOps

Source
def stepper[S <: Stepper[_]](implicit shape: StepperShape[A, S]): S

Возвращает scala.collection.Stepper для элементов этого набора.

Stepper позволяет создавать Java-поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться как итератор, который не упаковывает элементы.

Неявный параметр scala.collection.StepperShape определяет тип возвращаемого Stepper в соответствии с типом элемента этой коллекции.

  • Для коллекций Int, Short, Byte или Char возвращается scala.collection.IntStepper

  • Для коллекций Double или Float возвращается scala.collection.DoubleStepper

  • Для коллекций Long возвращается scala.collection.LongStepper

  • Для любого другого типа элемента возвращается scala.collection.AnyStepper

Обратите внимание, что этот метод переопределяется в подклассах, а тип возвращаемого значения уточняется до S with EfficientSplit, например, scala.collection.IndexedSeqOps.stepper. Для Steppers, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Steppers могут быть преобразованы только в последовательные потоки.

Inherited from IterableOnce

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

Суммирует элементы этой коллекции.

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

Type parameters
B

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

Value parameters
num

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

Returns

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

Inherited from IterableOnceOps

Source
def tail: View[A]

Остальная часть коллекции без ее первого элемента.

Inherited from IterableOps

Source
def tails: Iterator[View[A]]

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

Returns

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

Example

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

Inherited from IterableOps

Source
override def take(n: Int): SeqView[A]

Definition Classes SeqView -> IterableOps -> IterableOnceOps
Inherited from SeqView

Source
override def takeRight(n: Int): SeqView[A]

Definition Classes SeqView -> IterableOps
Inherited from SeqView

Source
def takeWhile(p: A => Boolean): View[A]

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

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

Value parameters
p

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

Returns

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

Inherited from IterableOps

Source
override def tapEach[U](f: A => U): SeqView[A]

Definition Classes SeqView -> IterableOps -> IterableOnceOps
Inherited from SeqView

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

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

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

Inherited from IterableOnceOps

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

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

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

Inherited from IterableOnceOps

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

Inherited from IterableOnceOps

Source
def toIndexedSeq: IndexedSeq[A]

Inherited from IterableOnceOps

Source
def toList: List[A]

Inherited from IterableOnceOps

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

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

Источник
def toSeq: Seq[A]

Возвращает

Это коллекцию в виде Seq[A]. Это эквивалентно to(Seq), но может быть быстрее.

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

Источник
def toSet[B >: A]: Set[B]

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

Источник
override def toString: String

Классы-предки View -> Iterable -> Any
Наследуется от View

Источник
def toVector: Vector[A]

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

Источник
def transpose[B](implicit asIterable: A => Iterable[B]): View[View[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))

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

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

тип элементов каждой итерируемой коллекции.

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

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

Возвращает

двумерную итерируемую коллекцию итерируемых коллекций, в которой n-я строка — это n-й столбец этой итерируемой коллекции.

Исключения
IllegalArgumentException

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

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

Источник
def unzip[A1, A2](implicit asPair: A => (A1, A2)): (View[A1], View[A2])

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

val xs = Iterable(
           (1, "one"),
           (2, "two"),
           (3, "three")).unzip
// xs == (Iterable(1, 2, 3),
//        Iterable(one, two, three))
Параметры типа
A1

тип первой половины элементов пар

A2

тип второй половины элементов пар

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

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

Возвращает

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

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

Источник
def unzip3[A1, A2, A3](implicit asTriple: A => (A1, A2, A3)): (View[A1], View[A2], View[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))
Параметры типа
A1

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

A2

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

A3

тип третьего члена троек элементов

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

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

Возвращает

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

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

Источник
def updated[B >: A](index: Int, elem: B): View[B]

Копия этого последовательности с одним заменённым элементом.

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

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

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

элемент замены

index

позиция замены

Возвращает

новая последовательность, являющаяся копией этой последовательности с элементом в позиции index, заменённым на elem.

Исключения
IndexOutOfBoundsException

если index не удовлетворяет 0 <= index < length. В случае ленивой коллекции это исключение может быть выброшено в более позднее время или вообще не выброшено (если конец коллекции никогда не оценивается).

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

Источник
override def view: SeqView[A]

Классы-предки SeqView -> View -> SeqOps -> IterableOps
Наследуется от SeqView

Источник
def withFilter(p: A => Boolean): WithFilter[A, View]

Создаёт нестрогий фильтр этой итерируемой коллекции.

Примечание: разница между c filter p и c withFilter p заключается в том, что первый создаёт новую коллекцию, а второй только ограничивает область последующих операций map, flatMap, foreach и withFilter.

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

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

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

Возвращает

объект класса WithFilter, который поддерживает операции map, flatMap, foreach и withFilter. Все эти операции применяются к тем элементам этой итерируемой коллекции, которые удовлетворяют предикату p.

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

Источник
def zip[B](that: IterableOnce[B]): View[(A, B)]

Возвращает итерируемую коллекцию, сформированную из этой итерируемой коллекции и другой итерируемой коллекции путём объединения соответствующих элементов в пары. Если одна из двух коллекций длиннее другой, оставшиеся её элементы игнорируются.

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

тип второй половины возвращаемых пар

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

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

Возвращает

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

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

Источник
def zipAll[A1 >: A, B](that: Iterable[B], thisElem: A1, thatElem: B): View[(A1, B)]

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

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

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

thatElem

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

thisElem

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

Возвращает

новый набор типа That, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и that. Длина возвращаемого набора — максимальная из длин этого итерируемого набора и that. Если этот итерируемый набор короче, чем that, значения thisElem используются для заполнения результата. Если that короче, чем этот итерируемый набор, значения thatElem используются для заполнения результата.

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

Source
def zipWithIndex: View[(A, Int)]

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

© 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/SeqView$$Drop.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API