Класс IndexedSeqView.Map
class Map[A, B](underlying: SomeIndexedSeqOps[A], f: A => B) extends Map[A, B] with IndexedSeqView[B]
| Суперадресаты | 18 типов |
|---|
Наследованные методы
Исходный код
final def ++[B >: B](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
| Унаследовано от | IterableOps |
|---|
Исходный код
final override def ++:[B >: B](prefix: IterableOnce[B]): CC[B]
Псевдоним для prependedAll
| Классы-предки | SeqOps -> IterableOps |
|---|---|
| Унаследовано от | SeqOps |
Исходный код
final def +:[B >: B](elem: B): CC[B]
Псевдоним для prepended.
Обратите внимание, что операторы, заканчивающиеся двоеточием, являются правоассоциативными (см. пример). Мемоническое правило для +: против :+ заключается в том, что двоеточие относится к стороне коллекции.
| Унаследовано от | SeqOps |
|---|
Исходный код
final def :+[B >: B](elem: B): CC[B]
Псевдоним для appended
Обратите внимание, что операторы, заканчивающиеся двоеточием, являются правоассоциативными (см. пример). Мемоническое правило для +: против :+ заключается в том, что двоеточие относится к стороне коллекции.
| Унаследовано от | SeqOps |
|---|
Исходный код
final def :++[B >: B](suffix: IterableOnce[B]): CC[B]
Псевдоним для appendedAll
| Унаследовано от | SeqOps |
|---|
Исходный код
Добавляет все элементы этой коллекции в строковый буфер. Записываемый текст состоит из строковых представлений (с точки зрения метода toString) всех элементов этой коллекции без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
| Параметры значений |
|
|---|---|
| Возвращает | строковый буфер |
| Унаследовано от | IterableOnceOps |
Исходный код
Добавляет все элементы этой коллекции в строковый буфер с использованием разделительной строки. Записываемый текст состоит из строковых представлений (с точки зрения метода toString) всех элементов этой коллекции, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
| Параметры значений |
|
|---|---|
| Возвращает | строковый буфер |
| Унаследовано от | IterableOnceOps |
Исходный код
Добавляет все элементы этой коллекции в строковый буфер с использованием начальной, конечной и разделительной строк. Записываемый текст начинается со строки start и заканчивается строкой end. Внутри строковые представления (с точки зрения метода toString) всех элементов этой коллекции разделяются строкой sep.
Пример:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
| Параметры значений |
|
|---|---|
| Возвращает | строковый буфер |
| Унаследовано от | IterableOnceOps |
Исходный код
override def appended[B >: B](elem: B): IndexedSeqView[B]
Копия этого представления с добавленным элементом.
Примечание: не будет завершаться для коллекций бесконечного размера.
Пример:
scala> val a = List(1) a: List[Int] = List(1) scala> val b = a :+ 2 b: List[Int] = List(1, 2) scala> println(a) List(1)
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | новое представление, содержащее все элементы этого представления, за которым следует |
| Классы-предки | IndexedSeqView -> SeqView -> SeqOps |
| Унаследовано от | IndexedSeqView |
Исходный код
| Унаследовано от | IndexedSeqView |
|---|
Исходный код
| Унаследовано от | SeqView |
|---|
Исходный код
def appendedAll[B >: B](suffix: IterableOnce[B]): CC[B]
Возвращает новую последовательность, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента последовательности — это наиболее общий суперкласс, охватывающий типы элементов двух операндов.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новый набор типа |
| Унаследовано от | SeqOps |
Исходный код
Получает элемент по указанному индексу. Эта операция предоставляется для удобства в Seq. Не следует полагать, что она эффективна, если у вас нет IndexedSeq.
| Унаследовано от | Map |
|---|
Исходный код
def collect[B](pf: PartialFunction[B, B]): CC[B]
Создаёт новый итерируемый набор, применяя частичную функцию ко всем элементам этого итерируемого набора, для которых функция определена.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новый итерируемый набор, полученный путём применения заданной частичной функции |
| Унаследовано от | IterableOps |
Исходный код
Находит первый элемент набора, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры значений |
|
|---|---|
| Возвращает | значение Option, содержащее результат применения pf к первому значению, для которого она определена, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Итерируется по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой берутся в порядке. Таким образом, "xy" и "yy" являются комбинациями длины 2 "xyy", но "yx" — нет. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращён только один.
Например, "xyyy" имеет три различных способа генерирования "xy" в зависимости от того, какой первый, второй или третий "y" был выбран. Однако, поскольку все они идентичны, будет выбран только один. Какой из трёх будет выбран, является деталью реализации, которая не определена.
Примечание: Даже когда применяется к представлению или ленивому набору, элементы всегда будут принудительно вычисляться.
| Возвращает | Итератор, который перебирает возможные комбинации n элементов этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Исходный код
| Унаследовано от | IndexedSeqView |
|---|
Исходный код
| Унаследовано от | SeqView |
|---|
Исходный код
final override def concat[B >: B](suffix: IterableOnce[B]): CC[B]
Возвращает новую последовательность, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элементов последовательности — это наиболее конкретный суперкласс, охватывающий типы элементов двух операндов.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | новая последовательность, содержащая все элементы этой последовательности, за которыми следуют все элементы |
| Определяющие классы | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Исходный код
Проверяет, содержит ли эта последовательность заданное значение в качестве элемента.
Примечание: может не завершиться для наборов бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Исходный код
Проверяет, содержит ли эта последовательность заданную последовательность как срез.
Примечание: может не завершиться для наборов бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start максимум len элементами этого набора.
Копирование прекратится, как только будут скопированы все элементы этого набора, или будет достигнут конец массива, или будет скопировано len элементов.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этого набора.
Копирование прекратится, как только будут скопированы все элементы этого набора или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Источник
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями этого набора.
Копирование прекращается, как только будут скопированы все элементы этого набора или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван. Его использование не определено и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя предикату проверки.
Примечание: не завершается для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, соответствует ли каждый элемент этой последовательности соответствующему элементу другой последовательности, удовлетворяя предикату проверки.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Подсчитывает количество элементов в наборе, удовлетворяющих предикату.
Примечание: не завершается для наборов бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Источник
Вычисляет разность мультимножеств между этой последовательностью и другой последовательностью.
| Параметры значения |
|
|---|---|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, за исключением некоторых вхождений элементов, которые также присутствуют в |
| Унаследовано от | SeqOps |
Исходный код
def distinct: C
Выбирает все элементы этой последовательности, игнорируя дубликаты.
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
|---|---|
| Унаследовано от | SeqOps |
Исходный код
def distinctBy[B](f: B => B): C
Выбирает все элементы этой последовательности, игнорируя дубликаты, как определено == после применения преобразующей функции f.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
| Унаследовано от | SeqOps |
Исходный код
Выбирает все элементы, кроме первых n.
| Параметры значения |
|
|---|---|
| Возвращает | представление, содержащее все элементы этого представления, кроме первых |
| Классы определений | IndexedSeqView -> SeqView -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqView |
Исходный код
Выбирает все элементы, кроме последних n.
| Параметры значения |
|
|---|---|
| Возвращает | представление, содержащее все элементы этого представления, кроме последних |
| Классы определений | IndexedSeqView -> SeqView -> IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqView |
Исходный код
Удаляет самую длинную префиксную часть элементов, которые удовлетворяют предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не является упорядоченным.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный суффикс этой итерабельной коллекции, первый элемент которого не удовлетворяет предикату |
| Унаследовано от | IterableOps |
Source
Пустой итерируемый объект того же типа, что и этот итерируемый объект.
| Возвращает | пустой итерируемый объект типа |
|---|---|
| Классы-определения | View -> IterableFactoryDefaults -> IterableOps |
| Унаследовано от | View |
Source
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не будет завершаться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Source
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: может не завершиться для бесконечных коллекций.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые удовлетворяют заданному предикату |
| Унаследовано от | IterableOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Унаследовано от | IterableOps |
Source
Находит первый элемент коллекции, удовлетворяющий предикату, если такой существует.
Примечание: может не завершиться для бесконечных коллекций.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа Option, содержащее первый элемент в коллекции, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Source
Находит последний элемент последовательности, удовлетворяющий предикату, если такой существует.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | значение опции, содержащее последний элемент в последовательности, удовлетворяющий |
| Унаследовано от | SeqOps |
Источник
def flatMap[B](f: B => IterableOnce[B]): CC[B]
Создаёт новую коллекцию итерируемых элементов, применяя функцию ко всем элементам этой коллекции итераций, используя элементы полученных коллекций.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип полученной коллекции определяется статическим типом коллекции итераций. Это может иногда приводить к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap ((word: String) => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новую коллекцию итерируемых элементов, полученную путём применения заданной функции, принимающей коллекцию |
| Унаследовано от | IterableOps |
Источник
def flatten[B](implicit asIterable: B => IterableOnce[B]): CC[B]
Преобразует эту коллекцию итерируемых элементов перебираемых коллекций в коллекцию итерируемых элементов, образованную элементами этих перебираемых коллекций.
Тип результирующей коллекции определяется типом коллекции итерируемых элементов. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новую коллекцию итерируемых элементов, полученную в результате конкатенации всех коллекций итерируемых элементов. |
| Унаследовано от | IterableOps |
Источник
def fold[A1 >: B](z: A1)(op: (A1, A1) => A1): A1
Складывает элементы этой коллекции, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не завершит работу для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат применения оператора складывания |
| Унаследовано от | IterableOnceOps |
Источник
def foldLeft[B](z: B)(op: (B, B) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции слева направо.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип основной коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
override def foldRight[B](z: B)(op: (B, B) => B): B
Применяет бинарный оператор ко всем элементам этой последовательности и начальному значению, справа налево.
Примечание: не будет завершаться для бесконечных наборов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Классы определений | IndexedSeqOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqOps |
Источник
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершаться для бесконечных наборов.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
| Унаследовано от | IterableOnceOps |
|---|
Источник
protected def fromSpecific(coll: IterableOnce[B]): CC[A]
Определяет, как преобразовать заданный Iterable[A] в набор типа C.
Этот процесс может быть выполнен строго или нестрого (т.е. без оценки элементов результирующих наборов). Другими словами, этот метод определяет модель оценки набора.
| Примечание |
При реализации пользовательского типа набора и уточнении Как видно из аннотации |
|---|---|
| Унаследовано от | IterableFactoryDefaults |
Источник
Разбивает этот итерируемый набор на карту итерируемых наборов в соответствии с некоторой функцией-дискриминатором.
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
Карта из ключей к итерируемым наборам, при этом соблюдается следующее инвариантное условие: (xs groupBy f)(k) = xs filter (x => f(x) == k) То есть, каждый ключ |
| Унаследовано от | IterableOps |
Источник
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором key. Каждый элемент в группе преобразуется в значение типа B с помощью функции value.
Это эквивалентно groupBy(key).mapValues(_.map(f)), но более эффективно.
case class User(name: String, age: Int) def namesByAge(users: Seq[User]): Map[Int, Seq[String]] = users.groupMap(_.age)(_.name)
Примечание: даже при применении к представлению или ленивой коллекции, она всегда будет принудительно вычислять элементы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Унаследовано от | IterableOps |
Источник
def groupMapReduce[K, B](key: B => K)(f: B => B)(reduce: (B, B) => B): Map[K, B]
Разделяет эту итерируемую коллекцию на карту в соответствии с функцией-дискриминатором key. Все значения, имеющие одинаковый дискриминатор, затем преобразуются с помощью функции f, а затем сводятся к одному значению с помощью функции reduce.
Это эквивалентно groupBy(key).mapValues(_.map(f).reduce(reduce)), но более эффективно.
def occurrences[A](as: Seq[A]): Map[A, Int] = as.groupMapReduce(identity)(_ => 1)(_ + _)
Примечание: даже при применении к представлению или ленивой коллекции, она всегда будет принудительно вычислять элементы.
| Унаследовано от | IterableOps |
|---|
Источник
Разделяет элементы на итерируемые коллекции фиксированного размера.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Унаследовано от | IterableOps |
Источник
override def head: A
Выбирает первый элемент этой последовательности.
| Возвращает | первый элемент этой последовательности. |
|---|---|
| Исключения |
|
| Классы определений | IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqOps |
Источник
override def headOption: Option[A]
Возвращает первый элемент, если он существует.
| Возвращает | первый элемент этой последовательности, если она непустая, |
|---|---|
| Классы определений | IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqOps |
Source
Находит индекс первого вхождения некоторого значения в этой последовательности.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого вхождения некоторого значения в этой последовательности после или на определенном начальном индексе.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: может не завершиться для последовательностей бесконечной длины.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс после или на определенном начальном индексе, где эта последовательность содержит заданную последовательность как срез.
Примечание: может не завершиться для последовательностей бесконечной длины.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: может не завершиться для последовательностей бесконечной длины.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на определенном начальном индексе.
Примечание: может не завершиться для последовательностей бесконечной длины.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Создает диапазон всех индексов этой последовательности.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
| Возвращает | значение |
|---|---|
| Унаследовано от | SeqOps |
Источник
def init: C
Первая часть коллекции без последнего элемента.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
| Унаследовано от | IterableOps |
|---|
Источник
Итерирует по начальным частям этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, промежуточные значения будут результатом последовательного применения init.
Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
| Возвращает | итератор по всем начальным частям этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Вычисляет пересечение мультимножеств между этой последовательностью и другой последовательностью.
| Параметры |
|
|---|---|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, которые также встречаются в |
| Унаследовано от | SeqOps |
Источник
Проверяет, содержит ли эта последовательность данный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
| Параметры |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Проверяет, пуста ли последовательность.
Примечание: Реализации в подклассах, которые не являются многократно итерируемыми, должны позаботиться о том, чтобы не потреблять элементы, когда isEmpty вызывается.
| Возвращает |
|
|---|---|
| Классы определения | SeqOps -> IterableOnceOps |
| Унаследовано от | SeqOps |
Источник
override def isTraversableAgain: Boolean
Проверяет, может ли эта итерируемая коллекция быть многократно пройдена. Всегда истинно для Iterables и ложно для Iterators, если не переопределено.
| Возвращает |
|
|---|---|
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
Объект-компаньон этого представления, предоставляющий различные методы фабрик.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Классы определений | View -> Iterable -> IterableOps |
| Унаследовано от | View |
Источник
Итератор может быть использован только один раз
| Классы определений | IndexedSeqView -> IndexedSeqOps -> IterableOnce |
|---|---|
| Унаследовано от | IndexedSeqView |
Источник
| Возвращает | Количество элементов в этой последовательности, если оно может быть вычислено с низкой стоимостью, в противном случае -1. Низкая стоимость обычно означает: не требует обхода коллекции. |
|---|---|
| Классы определений | IndexedSeqOps -> IterableOnce |
| Унаследовано от | IndexedSeqOps |
Источник
override def last: A
Выбирает последний элемент.
| Возвращает | Последний элемент этой последовательности. |
|---|---|
| Выбрасывает |
|
| Классы определений | IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqOps |
Источник
Находит индекс последнего вхождения некоторого значения в этой последовательности до или на заданном индексе конца.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значений |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
Находит последний индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значений |
|
|---|---|
| Возвращает | последний индекс, такой что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности |
| Унаследовано от | SeqOps |
Источник
Находит последний индекс до или на заданном индексе конца, где эта последовательность содержит заданную последовательность как срез.
END_OF_DOCUMENT_MARKERПримечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс |
| Унаследовано от | SeqOps |
Источник
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс последнего элемента этой последовательности, удовлетворяющего предикату |
| Унаследовано от | SeqOps |
Источник
Находит индекс последнего элемента, удовлетворяющего некоторому предикату перед или в заданном индексе конца.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Источник
def lastOption: Option[A]
Выбирает последний элемент, если это возможно.
Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции не упорядочен.
| Возвращает | последний элемент этой итерируемой коллекции$ в случае, если она не пуста, |
|---|---|
| Унаследовано от | IterableOps |
Источник
Аналогично zip, за исключением того, что элементы в каждой коллекции не потребляются до тех пор, пока над возвращенным LazyZip2 декоратором не будет вызвано строгое действие.
Вызовы lazyZip могут быть объединены для поддержки более высоких арностей (до 4) без затрат на создание и разбор промежуточных кортежей.
val xs = List(1, 2, 3) val res = (xs lazyZip xs lazyZip xs lazyZip xs).map((a, b, c, d) => a + b + c + d) // res == List(4, 8, 12)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | декоратор |
| Унаследовано от | Iterable |
Источник
Длина (количество элементов) последовательности. size является псевдонимом для length в коллекциях Seq.
| Унаследовано от | Map |
|---|
Source
Сравнивает длину этой последовательности с размером другой Iterable.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < that.size x == 0 if this.length == that.size x > 0 if this.length > that.size Метод, как он реализован здесь, не вызывает |
| Классы определения | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Source
Сравнивает длину этой последовательности со значением теста.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len Метод, как он реализован здесь, не вызывает |
| См. также | |
| Классы определения | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Source
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: B => B): IndexedSeqView[B]
Создаёт новый вид, применяя функцию ко всем элементам этого вида.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый вид, полученный путём применения данной функции |
| Классы определения | IndexedSeqView -> SeqView -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqView |
Source
Находит наибольший элемент.
Примечание: не будет завершаться для бесконечных коллекций.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этой коллекции относительно упорядочения |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Source
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f по отношению к порядку |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который возвращает наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение варианта, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f по отношению к порядку |
| Унаследовано от | IterableOnceOps |
Источник
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение варианта, содержащее наибольший элемент этой коллекции по отношению к порядку |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этой коллекции относительно порядка |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который возвращает наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | первый элемент этого набора с наименьшим значением, измеренным функцией f с учетом порядка |
| Throws |
|
| Inherited from | IterableOnceOps |
Source
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | значение option, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f, с учетом порядка |
| Inherited from | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | значение option, содержащее наименьший элемент этого набора с учетом порядка |
| Inherited from | IterableOnceOps |
Source
Отображает все элементы этого набора в строке.
Делегирует addString, который можно переопределить.
| Returns | строковое представление этого набора. В результирующей строке строковые представления (в соответствии с методом |
|---|---|
| Inherited from | IterableOnceOps |
Source
Отображает все элементы этого набора в строке с использованием разделительной строки.
Делегирует addString, который можно переопределить.
| Value parameters |
|
|---|---|
| Returns | строковое представление этого набора. В результирующей строке строковые представления (в соответствии с методом |
| Example |
|
| Inherited from | IterableOnceOps |
Source
Отображает все элементы этого набора в строке с использованием начальной, конечной и разделительной строк.
Делегирует вызов addString, который можно переопределить.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
protected def newSpecificBuilder: Builder[A, CC[A]]
| Возвращает | строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, scala.collection.View или scala.collection.immutable.LazyList), этот метод можно реализовать, но полученный |
|---|---|
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как видно из аннотации |
| Унаследовано от | IterableFactoryDefaults |
Источник
Проверяет, не пуста ли коллекция.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Копия этой последовательности с добавленным элементом до тех пор, пока не будет достигнута заданная целевая длина.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за которыми следует минимальное количество вхождений |
| Унаследовано от | SeqOps |
Источник
Пара, состоящая, во-первых, из всех элементов, удовлетворяющих предикату p, и, во-вторых, из всех элементов, которые не удовлетворяют ему. Интересно, потому что разбивает коллекцию на две части.
Представленная здесь реализация по умолчанию должна дважды пройтись по коллекции. Строгие коллекции имеют переопределённую версию partition в StrictOptimizedIterableOps, которая требует только одного прохода.
| Унаследовано от | IterableOps |
|---|
Источник
def partitionMap[A1, A2](f: B => Either[A1, A2]): (CC[A1], CC[A2])
Применяет функцию f к каждому элементу итерируемой коллекции и возвращает пару итерируемых коллекций: первая содержит значения, возвращённые f и заключённые в scala.util.Left, вторая — значения, заключённые в scala.util.Right.
Пример:
val xs = Iterable(1, "one", 2, "two", 3, "three") partitionMap {
case i: Int => Left(i)
case s: String => Right(s)
}
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пару итерируемых коллекций: первая содержит значения, возвращённые |
| Унаследовано от | IterableOps |
Источник
Создаёт новую последовательность, где фрагмент элементов в этой последовательности заменяется другой последовательностью.
Замена по отрицательным индексам эквивалентна замене, начинающейся с 0. Замена по индексам, равным или большим длины исходной последовательности, добавляет фрагмент в конец. Если заменяется больше элементов, чем существует, избыток игнорируется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новую последовательность, состоящую из всех элементов этой последовательности, за исключением того, что |
| Унаследовано от | SeqOps |
Источник
def permutations: Iterator[C]
Итерирует по различным перестановкам.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.
| Возвращает | Итератор, который проходит по различным перестановкам этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Источник
override def prepended[B >: B](elem: B): IndexedSeqView[B]
Копия представления с добавленным элементом в начало.
Также исходное представление не изменяется, поэтому вы захотите сохранить результат.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = 2 +: x y: List[Int] = List(2, 1) scala> println(x) List(1)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новое представление, состоящее из |
| Классы определений | IndexedSeqView -> SeqView -> IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqView |
Источник
| Унаследовано от | IndexedSeqView |
|---|
Источник
| Унаследовано от | SeqView |
|---|
Источник
def prependedAll[B >: B](prefix: IterableOnce[B]): CC[B]
Как и :++, возвращает новую коллекцию, содержащую элементы левого операнда, за которыми следуют элементы правого операнда.
Отличается от :++ тем, что тип результирующей коллекции определяется правым операндом, а не левым. Мнемоника: двоеточие стоит на стороне нового типа коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, содержащая все элементы |
| Унаследовано от | SeqOps |
Источник
Перемножает элементы этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этой коллекции относительно операции |
| Унаследовано от | IterableOnceOps |
Источник
def reduce[B >: B](op: (B, B) => B): B
Сводит элементы этой коллекции с помощью указанной ассоциативной бинарной операции.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат применения оператора reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceLeft[B >: B](op: (B, B) => B): B
Применяет бинарную операцию ко всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceLeftOption[B >: B](op: (B, B) => B): Option[B]
Опционально применяет бинарную операцию ко всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение Option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceOption[B >: B](op: (B, B) => B): Option[B]
Сводит элементы этой коллекции, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Значение Option, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceRight[B >: B](op: (B, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции, идя справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
def reduceRightOption[B >: B](op: (B, B) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции, идя справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение Option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Исходный код
override def reverse: IndexedSeqView[A]
Возвращает новый вид с элементами в обратном порядке.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: даже когда применяется к виду или ленивой коллекции, он всегда будет форсировать элементы.
| Возвращает | Новый вид со всеми элементами этого вида в обратном порядке. |
|---|---|
| Классы определения | IndexedSeqView -> SeqView -> IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqView |
Исходный код
override def reverseIterator: Iterator[A]
Итератор, возвращающий элементы в обратном порядке.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: xs.reverseIterator эквивалентно xs.reverse.iterator, но может быть более эффективным.
| Возвращает | итератор, возвращающий элементы этого вида в обратном порядке |
|---|---|
| Классы определения | IndexedSeqView -> IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqView |
Исходный код
| Классы определения | IndexedSeqOps -> IterableOnceOps |
|---|---|
| Унаследовано от | IndexedSeqOps |
Исходный код
Являются ли элементы этой коллекции одинаковыми (и в том же порядке), что и у that?
| Унаследовано от | SeqOps |
|---|
Исходный код
def scan[B >: B](z: B)(op: (B, B) => B): CC[B]
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, содержащая префиксное сканирование элементов в этой итерируемой коллекции |
| Унаследовано от | IterableOps |
Исходный код
def scanLeft[B](z: B)(op: (B, B) => B): CC[B]
Создает итерируемую коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Унаследовано от | IterableOps |
Исходный код
def scanRight[B](z: B)(op: (B, B) => B): CC[B]
Создает коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — это последний кумулятивный результат.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
Примечание: даже когда применяется к виду или ленивой коллекции, он всегда будет форсировать элементы.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | коллекция с промежуточными результатами |
| Унаследовано от | IterableOps |
Исходный код
Искать элемент в заданном интервале в этой отсортированной последовательности. Если эта последовательность является IndexedSeq, используется бинарный поиск. В противном случае используется линейный поиск.
Последовательность должна быть отсортирована с тем же Ordering перед вызовом; в противном случае результаты не определены.
| Параметры значения |
|
|---|---|
| Возвращает | значение |
| См. также |
scala.collection.SeqOps, метод |
| Примечание | Если |
| Классы определений | IndexedSeqOps -> SeqOps |
| Унаследованно от | IndexedSeqOps |
Исходный код
Искать этот отсортированный массив для конкретного элемента. Если последовательность является IndexedSeq, используется бинарный поиск. В противном случае используется линейный поиск.
Последовательность должна быть отсортирована с тем же Ordering перед вызовом; в противном случае результаты не определены.
| Параметры значения |
|
|---|---|
| Возвращает | значение |
| См. также |
scala.collection.SeqOps, метод |
| Классы определений | IndexedSeqOps -> SeqOps |
| Унаследованно от | IndexedSeqOps |
Исходный код
Вычисляет длину самой длинной последовательности, начинающейся с определенного индекса, элементы которой удовлетворяют некоторому предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | длину самой длинной последовательности в этой последовательности, начинающейся с индекса |
| Унаследованно от | SeqOps |
Исходный код
Вычисляет длину самой длинной последовательности, начинающейся с первого элемента, элементы которой все удовлетворяют некоторому предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | длину самой длинной последовательности в этой последовательности, начинающейся с первого элемента, где каждый элемент последовательности удовлетворяет предикату |
| Унаследованно от | SeqOps |
Исходный код
Размер этой последовательности.
Примечание: не завершится для коллекций бесконечного размера.
| Возвращает | количество элементов в этой последовательности. |
|---|---|
| Классы определений | SeqOps -> IterableOnceOps |
| Унаследованно от | SeqOps |
Source
Сравнивает размер этой последовательности с размером другой Iterable.
| Параметры |
|
|---|---|
| Возвращаемое значение |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Метод, как он реализован здесь, не вызывает |
| Классы-определения | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Source
Сравнивает размер этой последовательности со значением.
| Параметры |
|
|---|---|
| Возвращаемое значение |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Метод, как он реализован здесь, не вызывает |
| См. также | |
| Классы-определения | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Source
final def sizeIs: SizeCompareOps
Возвращает значение класса, содержащего операции для сравнения размера этого итерируемого набора со значением.
Эти операции реализуются с помощью sizeCompare(Int) и позволяют использовать более удобочитаемые выражения:
this.sizeIs < size // this.sizeCompare(size) < 0 this.sizeIs <= size // this.sizeCompare(size) <= 0 this.sizeIs == size // this.sizeCompare(size) == 0 this.sizeIs != size // this.sizeCompare(size) != 0 this.sizeIs >= size // this.sizeCompare(size) >= 0 this.sizeIs > size // this.sizeCompare(size) > 0
| Унаследовано от | IterableOps |
|---|
Source
Выбирает интервал элементов. Возвращаемый вид состоит из всех элементов x которые удовлетворяют инварианту:
from <= indexOf(x) < until
| Параметры |
|
|---|---|
| Возвращаемое значение | вид, содержащий элементы, большие или равные индексу |
| Классы-определения | IndexedSeqView -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqView |
Source
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" над ними (в отличие от их разбиения, как это делается в grouped.)
Возвращаемый итератор будет пустым при вызове на пустой коллекции. Последний элемент, который производит итератор, может быть меньше размера окна, если исходная коллекция не исчерпывается окном до ее конца и ее последний элемент не пропускается шагом перед ним.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" по ним (в отличие от их разбиения, как это делается в grouped).
Пустая коллекция возвращает пустой итератор, а непустая коллекция, содержащая меньше элементов, чем размер окна, возвращает итератор, который будет генерировать исходную коллекцию как единственный элемент.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, генерирующий итерируемые коллекции размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Унаследовано от | IterableOps |
Источник
Сортирует эту последовательность в соответствии с упорядочением, которое получается путем преобразования неявно заданного упорядочения с помощью функции преобразования.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
Сортировка стабильна. То есть, элементы, которые равны (как определяется ord.compare), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с упорядочением, где |
| См. также | |
| Пример |
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 |
Источник
Сортирует эту последовательность в соответствии с функцией сравнения.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
Сортировка стабильна. То есть, элементы, которые равны (как определено lt), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | последовательность, состоящую из элементов этой последовательности, отсортированных в соответствии с функцией сравнения |
| Пример |
List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
List("Bob", "John", "Steve", "Tom")
|
| Унаследовано от | SeqOps |
Источник
Сортирует это представление в соответствии с упорядочением.
Сортировка стабильна. То есть, элементы, которые равны (как определены ord.compare), появляются в отсортированной последовательности в том же порядке, что и в исходной.
| Параметры значения |
|
|---|---|
| Возвращает | представление, состоящее из элементов этого представления, отсортированных в соответствии с упорядочением |
| См. также | scala.math.Ordering Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться. |
| Классы определений | SeqView -> SeqOps |
| Унаследовано от | SeqView |
Источник
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно), чем (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не приводит к побочным эффектам.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пара, состоящая из самого длинного префикса этой итерируемой коллекции, элементы которого удовлетворяют |
| Унаследовано от | IterableOps |
Источник
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно), чем (c take n, c drop n).
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пара итерируемых коллекций, состоящая из первых |
| Классы определений | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
Проверяет, содержит ли эта последовательность заданную последовательность в заданном индексе.
Примечание: Если и получаемый объект this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Возвращает scala.collection.Stepper для элементов этой коллекции.
Stepper позволяет создавать Java-поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться как итератор, который не упаковывает элементы.
Неявный параметр scala.collection.StepperShape определяет тип результирующего Stepper в соответствии с типом элемента этой коллекции.
END_OF_DOCUMENT_MARKERДля коллекций
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 могут быть преобразованы только в последовательные потоки.
| Определяющие классы | IndexedSeqOps -> IterableOnce |
|---|---|
| Унаследовано от | IndexedSeqOps |
Исходный код
Суммирует элементы этой коллекции.
Примечание: не будет завершаться для бесконечных коллекций.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | сумма всех элементов этой коллекции относительно операции |
| Унаследовано от | IterableOnceOps |
Исходный код
def tail: C
Остальная часть коллекции без первого элемента.
| Унаследовано от | IterableOps |
|---|
Исходный код
Итерирует по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений tail.
| Возвращаемое значение | итератор по всем хвостам этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Исходный код
Выбирает первые n элементов.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | представление, содержащее только первые |
| Определяющие классы | IndexedSeqView -> SeqView -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqView |
Исходный код
Выбирает последние n элементов.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | представление, содержащее только последние |
| Определяющие классы | IndexedSeqView -> SeqView -> IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqView |
Исходный код
Взятие наибольшего префикса элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | наибольший префикс этой итерируемой коллекции, элементы которого удовлетворяют предикату |
| Унаследовано от | IterableOps |
Исходный код
override def tapEach[U](f: B => U): IndexedSeqView[A]
Применяет функцию со побочным эффектом к каждому элементу в этой коллекции. Строгие коллекции применят f к своим элементам немедленно, в то время как ленивые коллекции, такие как представления и LazyLists, применят f к каждому элементу только тогда, когда этот элемент вычисляется, и каждый раз, когда этот элемент вычисляется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | Такая же логическая коллекция, как и эта |
| Определяющие классы | IndexedSeqView -> SeqView -> IterableOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqView |
Исходный код
При заданной фабрике коллекции factory, преобразует эту коллекцию в соответствующее представление для текущего типа элемента A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
Преобразует коллекцию в массив.
Примечание к реализации: НЕ вызывайте Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
def toIndexedSeq: IndexedSeq[A]
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Исходный код
| Унаследовано от | IterableOnceOps |
|---|
Source
| Returns | Этот набор как |
|---|---|
| Inherited from | IterableOnceOps |
Source
| Inherited from | IterableOnceOps |
|---|
Source
Преобразует это представление в строку.
| Returns | строковое представление этого набора. По умолчанию эта строка состоит из |
|---|---|
| Definition Classes | View -> Iterable -> Any |
| Inherited from | View |
Source
| Inherited from | IterableOnceOps |
|---|
Source
Транспонирует этот итерируемый набор итерируемых наборов в итерируемый набор итерируемых наборов.
Тип результирующего набора будет определяться статическим типом итерируемого набора. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычисляться.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | двумерный итерируемый набор итерируемых наборов, в котором n-я строка содержит n-й столбец этого итерируемого набора. |
| Throws |
|
| Inherited from | IterableOps |
Source
def unzip[A1, A2](implicit asPair: B => (A1, A2)): (CC[A1], CC[A2])
Преобразует этот итерируемый набор пар в два набора первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | пара итерируемых наборов, содержащая первую и, соответственно, вторую половину каждой пары элементов этого итерируемого набора. |
| Inherited from | IterableOps |
Source
def unzip3[A1, A2, A3](implicit asTriple: B => (A1, A2, A3)): (CC[A1], CC[A2], CC[A3])
Преобразует этот итерируемый набор троек в три набора первого, второго и третьего элемента каждой тройки.
val xs = Iterable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three),
// Iterable(1, 2, 3))
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | тройка итерируемых наборов, содержащая первый, второй и, соответственно, третий член каждой тройки элементов этого итерируемого набора. |
| Inherited from | IterableOps |
Source
Копия этого последовательности с одним заменённым элементом.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | новая последовательность, являющаяся копией этой последовательности с элементом на позиции |
| Throws |
|
| Inherited from | SeqOps |
Source
override def view: IndexedSeqView[A]
Представление над элементами этого набора.
| Definition Classes | IndexedSeqView -> SeqView -> View -> IndexedSeqOps -> SeqOps -> IterableOps |
|---|---|
| Inherited from | IndexedSeqView |
Source
Создаёт нестрогий фильтр этого итерируемого набора.
Примечание: разница между c filter p и c withFilter p заключается в том, что первый создаёт новый набор, а второй только ограничивает область последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Value parameters |
|
|---|---|
| Returns | объект класса |
| Inherited from | IterableOps |
Source
def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора, объединяя соответствующие элементы в пары. Если один из двух наборов длиннее другого, его оставшиеся элементы игнорируются.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | новый итерируемый набор, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и |
| Inherited from | IterableOps |
Source
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора, объединяя соответствующие элементы в пары. Если один из двух наборов короче другого, используются плацехолдерные элементы для расширения более короткого набора до длины более длинного.
| Параметры значения |
|
|---|---|
| Возвращает | новый набор типа |
| Унаследовано от | IterableOps |
Исходный код
def zipWithIndex: CC[(A, Int)]
Объединяет этот итерируемый набор с его индексами.
| Возвращает | Новый итерируемый набор, содержащий пары, состоящие из всех элементов этого итерируемого набора, соединённых со своим индексом. Индексы начинаются с |
|---|---|
| Пример | |
| Унаследовано от | IterableOps |
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/collection/IndexedSeqView$$Map.html