Класс Range.Exclusive
| Наследуемые типы | 28 типов |
|---|
Конкретные методы
Исходный код
def isInclusive: Boolean
Наследованные методы
Исходный код
Псевдоним для concat
| Наследованно от | IterableOps |
|---|
Исходный код
Псевдоним для prependedAll
| Классы определений | SeqOps -> IterableOps |
|---|---|
| Наследованно от | SeqOps |
Исходный код
Псевдоним для prepended.
Обратите внимание, что операторы, заканчивающиеся на двоеточие, ассоциативны справа (см. пример). Мемоническое правило для +: против :+: двоеточие ставится со стороны коллекции.
| Наследованно от | SeqOps |
|---|
Исходный код
Псевдоним для appended
Обратите внимание, что операторы, заканчивающиеся на двоеточие, ассоциативны справа (см. пример). Мемоническое правило для +: против :+: двоеточие ставится со стороны коллекции.
| Наследованно от | SeqOps |
|---|
Исходный код
Псевдоним для 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 |
Исходный код
Комбинирует эту частичную функцию с другой частичной функцией, которая применяется к результатам этой частичной функции.
Обратите внимание, что вызов isDefinedAt для полученной частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется вызывать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, суженной другой частичной функцией, которая отображает аргументы |
| Унаследовано от | PartialFunction |
Источник
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
Если тип функции в ходе выполнения - PartialFunction, то используется другой метод andThen (обратите внимание на предостережения).
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения этой частичной функции, возможно, суженной указанной функцией, которая отображает аргументы |
| Классы-предки | PartialFunction -> Function1 |
| Унаследовано от | PartialFunction |
Источник
Копия этой последовательности с добавленным элементом.
Примечание: не завершится для коллекций бесконечного размера.
Пример:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, содержащая все элементы этой последовательности, после которых следует |
| Классы-предки | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
Возвращает новую последовательность, содержащую элементы левого операнда, после которых следуют элементы правого операнда. Тип элемента последовательности — наиболее специфичный суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая коллекция типа |
| Классы-предки | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
Получение элемента по указанному индексу. Эта операция предоставляется для удобства в Seq. Не следует полагать, что она будет эффективной, если у вас нет IndexedSeq.
| Унаследовано от | Range |
|---|
Источник
Применяет эту частичную функцию к данному аргументу, если он содержится в области определения функции. Применяет функцию обратного вызова, если эта частичная функция не определена.
Обратите внимание, что выражение pf.applyOrElse(x, default) эквивалентно
if(pf isDefinedAt x) pf(x) else default(x)
за исключением того, что метод applyOrElse может быть реализован более эффективно. Для всех частичных функций-литералов компилятор генерирует реализацию applyOrElse, которая избегает двойной оценки совпадений шаблонов и условий. Это делает applyOrElse основой эффективной реализации для многих операций и сценариев, таких как:
- объединение частичных функций в цепочки orElse/andThen не приводит к чрезмерной оценке apply/isDefinedAt - lift и unlift не оценивают исходные функции дважды при каждом вызове - runWith позволяет эффективно объединять частичные функции в императивном стиле с применением действий при определенных условиях
Для классов частичных функций, отличных от литералов, с ненулевой функцией isDefinedAt рекомендуется переопределить applyOrElse с пользовательской реализацией, которая избегает двойной оценки isDefinedAt. Это может привести к лучшей производительности и более предсказуемому поведению с точки зрения побочных эффектов.
| Параметры значения |
|
|---|---|
| Возвращает | результат применения этой функции или функции обратного вызова. |
| Унаследовано от | PartialFunction |
Источник
Создаёт новый диапазон со значениями start и end текущего диапазона и новым step.
| Возвращает | новый диапазон с другим шагом |
|---|---|
| Унаследовано от | Range |
Источник
Метод, который должен вызываться из каждой хорошо спроектированной функции equals, открытой для переопределения в подклассе. См. Programming in Scala, Chapter 28 для обсуждения и проектирования.
| Параметры значения |
|
|---|---|
| Возвращает | true, если эта instance может быть равной |
| Классы-предки | IndexedSeq -> Seq -> Equals |
| Унаследовано от | IndexedSeq |
Источник
Создаёт новую итерируемую коллекцию, применяя частичную функцию ко всем элементам этой итерируемой коллекции, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения заданной частичной функции |
| Классы-предки | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не является упорядоченным.
| Параметры значения |
|
|---|---|
| Возвращает | значение варианта, содержащего pf, примененное к первому значению, для которого оно определено, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Итерирует по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке. Таким образом, "xy" и "yy" — это комбинации длины 2 "xyy", но "yx" — нет. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращена только одна.
Например, "xyyy" имеет три различных способа сгенерировать "xy", в зависимости от того, какой элемент — первый, второй или третий "y" — выбран. Однако, так как все они идентичны, будет выбран только один. Какой из трёх будет взят, является реализационной деталью, которая не определена.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | Итератор, который проходит по возможным комбинациям n элементов этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Источник
Компонует другую частичную функцию k с этой частичной функцией, чтобы эта частичная функция применялась к результатам k.
Обратите внимание, что вызов isDefinedAt для результирующей частичной функции может применить первую частичную функцию и выполнить её побочный эффект. Для повышения эффективности рекомендуется использовать applyOrElse вместо isDefinedAt или apply.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция с областью определения другой частичной функции, суженной этой частичной функцией, которая сопоставляет аргументы |
| Унаследовано от | PartialFunction |
Источник
Компонует два экземпляра Function1 в новую Function1, при этом эта функция применяется последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Источник
Возвращает новую последовательность, содержащую элементы левого операнда, за которыми следуют элементы правого операнда. Тип элемента последовательности — это наиболее специфический суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, которая содержит все элементы этой последовательности, за которыми следуют все элементы |
| Классы определений | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Источник
Проверяет, содержит ли этот диапазон заданное значение в качестве элемента.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Классы определений | Range -> SeqOps |
| Унаследовано от | Range |
Источник
| Унаследовано от | Range |
|---|
Источник
Проверяет, содержит ли эта последовательность заданную последовательность как срез.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs, начиная с индекса start, не более чем len элементами этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов будут скопированы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует отбросить. Использование его не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Источник
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs, начиная с индекса start, значениями из этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | количество элементов, записанных в массив |
| Примечание | Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует отбросить. Использование его не определено и может измениться. |
| Унаследовано от | IterableOnceOps |
Source
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этого набора.
Копирование прекращается, как только скопированы все элементы этого набора или достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Использование: После вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование не определено и может быть изменено. |
| Унаследовано от | IterableOnceOps |
Source
Проверяет, соответствует ли каждый элемент итератора этого набора соответствующему элементу другого набора, удовлетворяя предикату проверки.
Примечание: не будет завершаться для наборов бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение |
|
| Унаследовано от | IterableOnceOps |
Source
Проверяет, соответствует ли каждый элемент этой последовательности соответствующему элементу другой последовательности, удовлетворяя предикату проверки.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение |
|
| Унаследовано от | SeqOps |
Source
Подсчитывает количество элементов в наборе, удовлетворяющих предикату.
Примечание: не будет завершаться для наборов бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Source
Вычисляет разность мультимножеств между этой последовательностью и другой последовательностью.
| Параметры значения |
|
|---|---|
| Возвращает | новая последовательность, содержащая все элементы этой последовательности, за исключением некоторых вхождений элементов, которые также присутствуют в |
| Определяющие классы | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
Выбирает все элементы этого диапазона, игнорируя дубликаты.
| Возвращает | новый диапазон, состоящий из всех элементов этого диапазона без дубликатов. |
|---|---|
| Определяющие классы | Range -> SeqOps |
| Унаследовано от | Range |
Источник
override def distinctBy[B](f: Int => B): C
Выбирает все элементы этой последовательности, игнорируя дубликаты, определяемые по == после применения функции преобразования f.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности без дубликатов. |
| Определяющие классы | StrictOptimizedSeqOps -> StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
Создаёт новый диапазон, содержащий все элементы этого диапазона, кроме первых n элементов.
| Параметры значения |
|
|---|---|
| Возвращает | новый диапазон, содержащий все элементы этого диапазона, кроме |
| Определяющие классы | Range -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | Range |
Источник
Создаёт новый диапазон, содержащий начальные length - n элементы диапазона.
Примечание: этот метод не использует билдеры для создания нового диапазона, и его сложность составляет O(1).
| Определяющие классы | Range -> StrictOptimizedIterableOps -> IndexedSeqOps -> IterableOps |
|---|---|
| Унаследовано от | Range |
Источник
Удаляет самую длинную префиксную часть элементов, удовлетворяющих предикату.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный суффикс этого диапазона, первый элемент которого не удовлетворяет предикату |
| Определяющие классы | Range -> IterableOps -> IterableOnceOps |
| Унаследовано от | Range |
Source
def elementWise: ElementWiseExtractor[A, B]
Возвращает объект-экстрактор с методом unapplySeq, который извлекает каждый элемент данных последовательности.
| Пример |
val firstChar: String => Option[Char] = _.headOption
Seq("foo", "bar", "baz") match {
case firstChar.unlift.elementWise(c0, c1, c2) =>
println(s"$c0, $c1, $c2") // Output: f, b, b
}
|
|---|---|
| Унаследовано от | PartialFunction |
Source
override def empty: CC[A]
Пустая итерируемая последовательность того же типа, что и эта итерируемая последовательность.
| Возвращает | пустую итерируемую последовательность типа |
|---|---|
| Классы определения | IterableFactoryDefaults -> IterableOps |
| Унаследовано от | IterableFactoryDefaults |
Source
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Source
Универсальный метод равенства, определённый в AnyRef.
| Классы определения | Range -> Seq -> Equals -> Any |
|---|---|
| Унаследовано от | Range |
Source
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, которые удовлетворяют заданному предикату |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые не удовлетворяют заданному предикату |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа option, содержащее первый элемент в коллекции, удовлетворяющий |
| Унаследовано от | IterableOnceOps |
Источник
Находит последний элемент последовательности, удовлетворяющий предикату, если таковой имеется.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа option, содержащее последний элемент в последовательности, удовлетворяющий |
| Унаследовано от | SeqOps |
Источник
Строит новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции и используя элементы полученных коллекций.
Например:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путем применения заданной функции, возвращающей коллекцию |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Преобразует эту итерируемую коллекцию коллекций в итерируемую коллекцию, образованную элементами этих коллекций.
Тип результирующей коллекции будет определяться типом итерируемой коллекции. Например:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путем конкатенации всех коллекций элементов. |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Складывает элементы этой коллекции, используя заданный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат применения оператора сложения |
| Унаследовано от | IterableOnceOps |
Источник
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции, слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только тип коллекции по умолчанию не является упорядоченным или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
Применяет бинарный оператор ко всем элементам этой последовательности и начальному значению, справа налево.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Классы определения | IndexedSeqOps -> IterableOnceOps |
| Унаследовано от | IndexedSeqOps |
Источник
Проверяет, выполняется ли предикат для всех элементов этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в инференции типов scalac.
| Definition Classes | Range -> IterableOnceOps |
|---|---|
| Inherited from | Range |
Source
Определяет, как преобразовать заданный Iterable[A] в коллекцию типа C.
Этот процесс может быть выполнен строго или нестрого (т.е. без вычисления элементов результирующих коллекций). Другими словами, этот метод определяет модель вычисления коллекции.
| Note |
При реализации пользовательского типа коллекции и уточнении Как показывает аннотация |
|---|---|
| Inherited from | IterableFactoryDefaults |
Source
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns |
Карта из ключей к итерируемым коллекциям, такая что выполняется следующее инвариантное условие: (xs groupBy f)(k) = xs filter (x => f(x) == k) То есть, каждый ключ |
| Inherited from | IterableOps |
Source
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором key. Каждый элемент в группе преобразуется в значение типа B с помощью функции value.
Это эквивалентно groupBy(key).mapValues(_.map(f)), но более эффективно.
case class User(name: String, age: Int) def namesByAge(users: Seq[User]): Map[Int, Seq[String]] = users.groupMap(_.age)(_.name)
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Inherited from | IterableOps |
Source
Разделяет эту итерируемую коллекцию на карту в соответствии с функцией-дискриминатором 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, метод |
| Классы определения | Range -> IterableOps |
| Унаследовано от | Range |
Исходный код
Вычисляет значение хэш-кода для объекта.
Стандартный алгоритм хэширования зависит от платформы.
Обратите внимание, что для двух объектов могут быть одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)) но они могут не быть равными (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако, требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true) у них были идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому, при переопределении этого метода, убедитесь, что поведение согласуется с методом equals.
| Возвращает | значение хэш-кода для этого объекта. |
|---|---|
| Классы определения | Range -> Seq -> Any |
| Унаследовано от | Range |
Исходный код
Выбирает первый элемент этого диапазона.
| Возвращает | первый элемент этого диапазона. |
|---|---|
| Исключения |
|
| Классы определения | Range -> IndexedSeqOps -> IterableOps |
| Унаследовано от | Range |
Исходный код
override def headOption: Option[A]
Возвращает первый элемент, если он существует.
| Возвращает | первый элемент этой последовательности, если она непустая, |
|---|---|
| Классы определения | IndexedSeqOps -> IterableOps |
| Унаследовано от | IndexedSeqOps |
Исходный код
Делает диапазон включительным.
| Унаследовано от | Range |
|---|
Исходный код
Находит индекс первого вхождения значения в этом диапазоне после или на заданном начальном индексе.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Классы определения | Range -> SeqOps |
| Унаследовано от | Range |
Исходный код
Находит индекс первого вхождения некоторого значения в этой последовательности.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс, где эта последовательность содержит заданную последовательность в качестве среза.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит первый индекс после или на стартовом индексе, где эта последовательность содержит заданную последовательность в качестве среза.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | первый индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на некотором начальном индексе.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | индекс |
| Унаследовано от | SeqOps |
Source
Создаёт диапазон всех индексов этой последовательности.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Возвращает | значение |
|---|---|
| Унаследовано от | SeqOps |
Источник
Создаёт новый диапазон, содержащий все элементы данного диапазона, кроме последнего.
Примечание: этот метод не использует билдеры для построения нового диапазона, и его сложность равна O(1).
| Возвращает | новый диапазон, состоящий из всех элементов данного диапазона, кроме последнего. |
|---|---|
| Классы-предки | Range -> IterableOps |
| Унаследовано от | Range |
Источник
Итерируется по начальным отрезкам данного диапазона. Первое значение будет этим диапазоном, а последнее — пустым диапазоном, промежуточные значения — результаты последовательных применений init.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут форсироваться.
| Возвращает | итератор по всем начальным отрезкам данного диапазона |
|---|---|
| Пример |
|
| Классы-предки | Range -> IterableOps |
| Унаследовано от | Range |
Источник
Вычисляет пересечение по множеству элементов данной последовательности и другой последовательности.
| Параметры |
|
|---|---|
| Возвращает | новая последовательность, содержащая все элементы данной последовательности, которые также присутствуют в |
| Классы-предки | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Источник
Проверяет, содержит ли эта последовательность заданный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
| Параметры |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SeqOps |
Источник
override def isTraversableAgain: Boolean
Проверяет, можно ли многократно итерироваться по этой коллекции. Всегда true для Iterables и false для Iterators, если не переопределено.
| Возвращает |
|
|---|---|
| Классы-предки | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Источник
Компаньон-объект этой последовательности, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Классы-предки | IndexedSeq -> IndexedSeq -> Seq -> Seq -> Iterable -> Iterable -> IterableOps |
| Унаследовано от | IndexedSeq |
Источник
Итератор может быть использован только один раз
| Классы-предки | Range -> IndexedSeqOps -> IterableOnce |
|---|---|
| Унаследовано от | Range |
Источник
| Возвращает | Количество элементов в этой последовательности, если его можно вычислить с низкой стоимостью, -1 в противном случае. Низкая стоимость обычно означает: не требуется проход по коллекции. |
|---|---|
| Классы-предки | IndexedSeqOps -> IterableOnce |
| Унаследовано от | IndexedSeqOps |
Источник
Последний элемент данного диапазона. Этот метод вернёт корректное значение, даже если элементов слишком много для перебора.
| Классы-предки | Range -> IndexedSeqOps -> IterableOps |
|---|---|
| Унаследовано от | Range |
Источник
Находит индекс последнего вхождения некоторого значения в этом диапазоне перед или в заданном индексе конца.
| Параметры типа |
|
|---|---|
| Параметры |
|
| Возвращает | индекс |
| Классы-предки | Range -> SeqOps |
| Унаследовано от | Range |
Источник
Находит последний индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры |
|
|---|---|
| Возвращает | последний индекс, такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности |
| Унаследовано от | SeqOps |
Источник
Находит последний индекс перед или в заданном индексе конца, где эта последовательность содержит заданную последовательность как срез.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | последний индекс |
| Унаследовано от | 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.
| Унаследовано от | Range |
|---|
Источник
Сравнивает длину этой последовательности с размером другого 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 |
Источник
Сравнивает длину этой последовательности со значением теста.
| Параметры значения |
|
|---|---|
| Возвращает |
Значение x < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len Метод, как реализован здесь, не вызывает |
| См. также | |
| Классы определений | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Источник
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 |
|---|
Источник
Преобразует эту частичную функцию в обычную функцию, возвращающую опциональное значение.
| Возвращает | функцию, которая принимает аргумент |
|---|---|
| См. также | Function.unlift |
| Унаследовано от | PartialFunction |
Источник
Создает новый диапазон, применяя функцию ко всем элементам этого диапазона.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый диапазон, полученный путем применения заданной функции |
| Классы определений | Range -> StrictOptimizedIterableOps -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | Range |
Источник
Находит наибольший элемент.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этого диапазона по отношению к упорядочению |
| Выбрасывает |
|
| Определяющие классы | Range -> IterableOnceOps |
| Унаследовано от | Range |
Источник
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этой коллекции с наибольшим значением, измеренным функцией f по отношению к упорядочению |
| Выбрасывает |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа option, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f по отношению к упорядочению |
| Унаследовано от | IterableOnceOps |
Источник
Находит наибольший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа option, содержащее наибольший элемент этой коллекции по отношению к упорядочению |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этого диапазона по отношению к упорядочению |
| Выбрасывает |
|
| Определяющие классы | Range -> IterableOnceOps |
| Унаследовано от | Range |
Источник
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение Option, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Находит наименьший элемент.
Примечание: не будет завершаться для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение Option, содержащее наименьший элемент этого набора относительно порядка |
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке.
Делегирует addString, который можно переопределить.
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этой коллекции в строке с использованием разделителя.
Делегирует addString, который можно переопределить.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (относительно метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
Отображает все элементы этого набора в строке, используя начальную, конечную и разделительную строки.
Делегирует вызов addString, который можно переопределить.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этого набора. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Исходный код
protected def newSpecificBuilder: Builder[A, CC[A]]
| Возвращает | строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, scala.collection.View или scala.collection.immutable.LazyList) этот метод можно реализовать, но полученный |
|---|---|
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как видно из аннотации |
| Унаследовано от | IterableFactoryDefaults |
Исходный код
Проверяет, не пуста ли коллекция.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Исходный код
Компонует эту частичную функцию с резервной частичной функцией, которая применяется там, где эта частичная функция не определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | частичная функция, у которой область определения является объединением областей определения этой частичной функции и |
| Унаследовано от | PartialFunction |
Исходный код
Копия этой последовательности с добавленным значением элемента до тех пор, пока не будет достигнута заданная целевая длина.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности, за которыми следует минимальное количество вхождений |
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
Пара пар: во-первых, все элементы, удовлетворяющие предикату p, и, во-вторых, все элементы, которые не удовлетворяют. Интересно, потому что он разделяет коллекцию на две части.
Установленная здесь реализация требует два прохода по коллекции. Строгие коллекции имеют переопределенный вариант partition в StrictOptimizedIterableOps, что требует только одного прохода.
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
|---|---|
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Применяет функцию 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))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пара итерируемых коллекций: первая — из тех значений, которые возвращены |
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Создаёт новую последовательность, где фрагмент элементов в этой последовательности заменяется другой последовательностью.
Замена по отрицательным индексам эквивалентна замене, начинающейся с 0. Замена по индексам, равным или большим длины исходной последовательности, добавляет вставку в конец. Если заменённых значений больше, чем фактически существует, избыток игнорируется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из всех элементов этой последовательности за исключением |
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Исходный код
def permutations: Iterator[C]
Перебирает различные перестановки.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычислены.
| Возвращает | Итератор, который перебирает различные перестановки этой последовательности. |
|---|---|
| Пример |
|
| Унаследовано от | SeqOps |
Source
Копия последовательности с добавленным элементом в начало.
Также, исходная последовательность не изменяется, поэтому вам нужно сохранить результат.
Пример:
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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, состоящая из |
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Source
Как и в случае с :++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.
Отличается от :++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоника: двоеточие стоит со стороны нового типа коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая последовательность, которая содержит все элементы |
| Классы определений | StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | StrictOptimizedSeqOps |
Source
Перемножает элементы этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этой коллекции относительно операции |
| Унаследовано от | IterableOnceOps |
Source
Сводит элементы этой коллекции с использованием указанной ассоциативной бинарной операции.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Результат применения операции reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
Применяет бинарную операцию ко всем элементам этой коллекции слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Выполняет бинарную операцию над всеми элементами этой коллекции слева направо, необязательно.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение опционального типа, содержащее результат |
| Унаследовано от | IterableOnceOps |
Исходный код
Сводит элементы этой коллекции, если таковые имеются, используя заданный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Значение опционального типа, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Исходный код
Применяет бинарный оператор ко всем элементам этой коллекции, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор ассоциативен и коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Исходный код
Необязательно применяет бинарный оператор ко всем элементам этой коллекции, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор ассоциативен и коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значений |
|
| Возвращает | значение варианта, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
Возвращает обратный порядок этого диапазона.
| Классы-предки | Range -> IndexedSeqOps -> SeqOps |
|---|---|
| Унаследовано от | Range |
Источник
override def reverseIterator: Iterator[A]
Итератор, возвращающий элементы в обратном порядке.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: xs.reverseIterator эквивалентно xs.reverse.iterator, но может быть более эффективным.
| Возвращает | итератор, возвращающий элементы этой последовательности в обратном порядке |
|---|---|
| Классы-предки | IndexedSeqOps -> SeqOps |
| Унаследовано от | IndexedSeqOps |
Источник
| Классы-предки | IndexedSeqOps -> IterableOnceOps |
|---|---|
| Унаследовано от | IndexedSeqOps |
Источник
Комбинирует данную частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализовано через applyOrElse и, следовательно, потенциально более эффективно. Использование runWith избегает двойной оценки обработчиков шаблонов и условий для частичных функций-литералов.
| Параметры значений |
|
|---|---|
| Возвращает | функция, которая отображает аргументы |
| См. также |
|
| Унаследовано от | PartialFunction |
Источник
Являются ли элементы этой коллекции такими же (и в том же порядке), как и у that?
| Классы-предки | Range -> IndexedSeq -> SeqOps |
|---|---|
| Унаследовано от | Range |
Источник
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий префиксное сканирование элементов в этом итерируемом наборе |
| Унаследованно от | IterableOps |
Источник
Создаёт итерируемый набор, содержащий кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | набор с промежуточными результатами |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследованно от | StrictOptimizedIterableOps |
Источник
Создаёт набор, содержащий кумулятивные результаты применения оператора справа налево. Головной элемент набора — последний кумулятивный результат.
Примечание: не будет завершаться для наборов бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
Примечание: даже при применении к представлению или ленивому набору элементы всегда будут принудительно вычислены.
Пример:
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 |
Исходный код
Сравнивает размер этой последовательности с размером другой 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 |
Исходный код
Сравнивает размер этой последовательности со значением-образцом.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Реализация данного метода не вызывает |
| См. также | |
| Классы определения | SeqOps -> IterableOps |
| Унаследовано от | SeqOps |
Исходный код
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 |
|---|
Исходный код
Создаёт новый диапазон, содержащий элементы, начиная с from и до, но не включая until.
Примечание: этот метод не использует билдеры для построения нового диапазона, и его сложность составляет O(1).
| Параметры значения |
|
|---|---|
| Возвращаемое значение | новый диапазон, состоящий из непрерывного интервала значений в старом диапазоне |
| Классы определения | Range -> IndexedSeqOps -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | Range |
Исходный код
Группирует элементы в блоки фиксированного размера, пропуская "скользящее окно" над ними (в отличие от их разделения, как в 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 Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены. |
| Классы-родители | Range -> StrictOptimizedSeqOps -> SeqOps |
| Унаследовано от | Range |
Исходный код
Разделяет этот диапазон на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не приводит к побочным эффектам.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | пара, состоящая из самого длинного префикса этого диапазона, элементы которого удовлетворяют |
| Классы-родители | Range -> StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | Range |
Исходный код
Разделяет этот диапазон на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
| Параметры значения |
|
|---|---|
| Возвращаемое значение | пара диапазонов, состоящая из первых |
| Классы-родители | Range -> IterableOps -> IterableOnceOps |
| Унаследовано от | Range |
Исходный код
Проверяет, содержит ли эта последовательность заданную последовательность в заданном индексе.
Примечание: если оба получаемого объекта this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
|
| Унаследовано от | SeqOps |
Исходный код
final override def stepper[S <: Stepper[_]](implicit shape: StepperShape[Int, S]): S & EfficientSplit
Возвращает scala.collection.Stepper для элементов этой коллекции.
Stepper позволяет создавать Java поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться как итератор, который не упаковывает элементы.
Неявный параметр scala.collection.StepperShape определяет тип результирующего Stepper в соответствии с типом элемента этой коллекции.
Для коллекций
Int,Short,ByteилиChar, возвращается scala.collection.IntStepperДля коллекций
DoubleилиFloat, возвращается scala.collection.DoubleStepperДля коллекций
Long, возвращается scala.collection.LongStepperДля любого другого типа элемента возвращается scala.collection.AnyStepper
Обратите внимание, что этот метод переопределен в подклассах, а тип возвращаемого значения уточнен до S with EfficientSplit, например scala.collection.IndexedSeqOps.stepper. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, конвертеры в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Stepper могут быть преобразованы только в последовательные потоки.
| Классы-родители | Range -> IndexedSeqOps -> IterableOnce |
|---|---|
| Унаследовано от | Range |
Источник
Суммирует элементы этой коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | сумма всех элементов этого диапазона относительно оператора |
| Классы определения | Range -> IterableOnceOps |
| Унаследовано от | Range |
Источник
Создаёт новый диапазон, содержащий все элементы этого диапазона, кроме первого.
Примечание: этот метод не использует билдеры для построения нового диапазона, и его сложность составляет O(1).
| Возвращает | новый диапазон, состоящий из всех элементов этого диапазона, кроме первого. |
|---|---|
| Классы определения | Range -> IterableOps |
| Унаследовано от | Range |
Источник
Итерируется по хвостам этого диапазона. Первое значение будет этим диапазоном, а последнее — пустым диапазоном, а промежуточные значения будут результатом последовательных применений tail.
| Возвращает | итератор по всем хвостам этого диапазона |
|---|---|
| Пример |
|
| Классы определения | Range -> IterableOps |
| Унаследовано от | Range |
Источник
Создаёт новый диапазон, содержащий первые n элементов этого диапазона.
| Параметры значения |
|
|---|---|
| Возвращает | новый диапазон, состоящий из |
| Классы определения | Range -> IndexedSeqOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | Range |
Источник
Создаёт новый диапазон, состоящий из последних n элементов диапазона.
Примечание: этот метод не использует билдеры для построения нового диапазона, и его сложность составляет O(1).
| Классы определения | Range -> StrictOptimizedIterableOps -> IndexedSeqOps -> IterableOps |
|---|---|
| Унаследовано от | Range |
Источник
Берёт самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный префикс этого диапазона, все элементы которого удовлетворяют предикату |
| Классы определения | Range -> IterableOps -> IterableOnceOps |
| Унаследовано от | Range |
Источник
Применяет функцию с побочным эффектом к каждому элементу в этой коллекции. Строгие коллекции применят f к своим элементам немедленно, в то время как ленивые коллекции, такие как представления и LazyLists, применят f к каждому элементу только тогда, когда этот элемент будет вычислен, и каждый раз, когда этот элемент вычисляется.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Такая же логическая коллекция, что и эта |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
При заданном фабричном методе коллекции factory, преобразует эту коллекцию в соответствующее представление для текущего типа элемента A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
| Унаследовано от | IterableOnceOps |
|---|
Источник
Преобразовать коллекцию в массив.
Примечание реализации: НЕ вызывайте Array.from из этого метода.
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
final override def toIndexedSeq: IndexedSeq[A]
| Классы определения | IndexedSeq -> IterableOnceOps |
|---|---|
| Унаследовано от | IndexedSeq |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
| Возвращает | Эта коллекция как |
|---|---|
| Классы определения | Seq -> IterableOnceOps |
| Унаследовано от | Seq |
Источник
| Inherited from | IterableOnceOps |
|---|
Source
Возвращает строковое представление объекта.
По умолчанию представление зависит от платформы.
| Returns | строковое представление объекта. |
|---|---|
| Definition Classes | Range -> Seq -> Function1 -> Iterable -> Any |
| Inherited from | Range |
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
Пытается извлечь B из A в выражении сопоставления с образцом.
| Inherited from | PartialFunction |
|---|
Source
Преобразует это итерируемое множество пар в два множества первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | пара итерируемых множеств, содержащих первую, соответственно вторую половину каждой пары элементов этого итерируемого множества. |
| Definition Classes | StrictOptimizedIterableOps -> IterableOps |
| Inherited from | StrictOptimizedIterableOps |
Source
Преобразует это итерируемое множество троек в три множества первого, второго и третьего элемента каждой тройки.
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 | тройка итерируемых множеств, содержащих первый, второй, соответственно третий элемент каждой тройки элементов этого итерируемого множества. |
| Definition Classes | StrictOptimizedIterableOps -> IterableOps |
| Inherited from | StrictOptimizedIterableOps |
Source
Копия этого последовательности с одним заменённым элементом.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | новая последовательность, являющаяся копией этой последовательности с элементом в позиции |
| Throws |
|
| Definition Classes | StrictOptimizedSeqOps -> SeqOps |
| Inherited from | StrictOptimizedSeqOps |
Source
override def view: IndexedSeqView[A]
Представление над элементами этого множества.
| Definition Classes | IndexedSeqOps -> SeqOps -> IterableOps |
|---|---|
| Inherited from | IndexedSeqOps |
Source
Создаёт нестрогий фильтр этого итерируемого множества.
Примечание: разница между c filter p и c withFilter p в том, что первый создаёт новое множество, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если только тип основного множества не упорядочен.
| Value parameters |
|
|---|---|
| Returns | объект класса |
| Inherited from | IterableOps |
Source
override def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемое множество, образованное из этого итерируемого множества и другого итерируемого множества путём объединения соответствующих элементов в пары. Если одно из двух множеств длиннее другого, оставшиеся элементы игнорируются.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора путем объединения соответствующих элементов в пары. Если один из двух наборов короче другого, для расширения более короткого набора до длины более длинного используются заполнители.
| Параметры значения |
|
|---|---|
| Возвращает | новый набор типа |
| Унаследовано от | IterableOps |
Исходный код
override def zipWithIndex: CC[(A, Int)]
Объединяет этот итерируемый набор с его индексами.
| Возвращает | Новый итерируемый набор, содержащий пары, состоящие из всех элементов этого итерируемого набора, соединенных со своим индексом. Индексы начинаются с |
|---|---|
| Пример | |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Унаследованные поля
Исходный код
Проверяет, пуст ли диапазон.
Примечание: Реализации в подклассах, которые не являются повторно итерируемыми, должны позаботиться о том, чтобы не потреблять никаких элементов, когда вызывается isEmpty.
| Возвращает |
|
|---|---|
| Унаследовано от | Range |
© 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/immutable/Range$$Exclusive.html