Класс TreeSet.TreeSet
final class TreeSet[A] extends AbstractSet[A] with SortedSet[A] with SortedSetOps[A, TreeSet, TreeSet[A]] with StrictOptimizedSortedSetOps[A, TreeSet, TreeSet[A]] with SortedSetFactoryDefaults[A, TreeSet, Set] with DefaultSerializable
Этот класс реализует неизменяемые упорядоченные множества с использованием дерева.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| См. также | "Обзор библиотеки коллекций Scala" раздел о |
| Надтипы | 31 тип |
Конструкторы
Исходный код
Конкретные методы
Исходный код
Создает новое неизменяемое множество, добавляя все элементы, содержащиеся в другом наборе, в это неизменяемое множество, опуская дубликаты.
Этот метод принимает коллекцию элементов и добавляет все элементы, опуская дубликаты, в неизменяемое множество.
Пример:
scala> val a = Set(1, 2) concat Set(2, 3) a: scala.collection.immutable.Set[Int] = Set(1, 2, 3)
| Параметры значения |
|
|---|---|
| Возвращает | новый неизменяемый набор дерева с добавленными элементами, опуская дубликаты. |
| Определяющие классы | StrictOptimizedSetOps -> StrictOptimizedSetOps -> SetOps |
Источник
Проверяет, содержит ли этот набор элемент elem.
| Параметры значения |
|
|---|---|
| Возвращает | true, если |
Источник
Вычисляет разность этого набора и другого набора.
| Параметры значения |
|
|---|---|
| Возвращает | множество, содержащее те элементы этого набора, которые также не содержатся в заданном наборе |
| Определяющие классы | SetOps -> SetOps |
Источник
Выбирает все элементы, кроме первых n.
| Параметры значения |
|
|---|---|
| Возвращает | неизменяемый набор дерева, состоящий из всех элементов этого неизменяемого набора дерева, кроме первых |
| Определяющие классы | IterableOps -> IterableOnceOps |
Источник
Остаток коллекции без её n последних элементов. Для линейных неизменяемых коллекций это должно предотвращать создание копии.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps |
|---|
Источник
Удаляет самую длинную префиксную часть элементов, удовлетворяющих предикату.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный суффикс этого неизменяемого набора дерева, первый элемент которого не удовлетворяет предикату |
| Определяющие классы | IterableOps -> IterableOnceOps |
Источник
Равенство наборов реализовано с помощью метода поиска contains. Этот метод возвращает true, если
аргумент
thatявляетсяSet,два набора имеют одинаковый размер, и
для каждого
elementэтого набора,other.contains(element) == true.
Реализация equals проверяет метод canEqual, поэтому подклассы Set могут сузить равенство до определенных типов наборов. Реализации Set в стандартной библиотеке могут все сравниваться, их методы canEqual возвращают true.
Примечание: метод equals соблюдает законы равенства (симметричность, транзитивность) только в том случае, если два множества используют одну и ту же функцию эквивалентности элементов в операции поиска. Например, операция эквивалентности элементов в scala.collection.immutable.TreeSet определяется его порядком. Сравнение TreeSet с HashSet приводит к неожиданным результатам, если ordering.equiv(e1, e2) (используемая для поиска в TreeSet) отличается от e1 == e2 (используемой для поиска в HashSet).
scala> import scala.collection.immutable._
scala> val ord: Ordering[String] = _ compareToIgnoreCase _
scala> TreeSet("A")(ord) == HashSet("a")
val res0: Boolean = false
scala> HashSet("a") == TreeSet("A")(ord)
val res1: Boolean = true
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Классы определений | SortedSet -> Set -> Equals -> Any |
Источник
Создает новое TreeSet с удаленным элементом.
| Параметры значения |
|
|---|---|
| Возвращает | новое неизменяемое дерево множеств, содержащее все элементы этого неизменяемого дерева множеств, кроме |
Источник
Выбирает все элементы этого неизменяемого дерева множеств, которые удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новое неизменяемое дерево множеств, состоящее из всех элементов этого неизменяемого дерева множеств, которые удовлетворяют заданному предикату |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
Источник
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
| Классы определений | IterableOnceOps |
|---|
Источник
override def head: A
Выбирает первый элемент этого неизменяемого дерева множеств.
| Возвращает | первый элемент этого неизменяемого дерева множеств. |
|---|---|
| Исключения |
|
| Классы определений | IterableOps |
Источник
Создает новое TreeSet с добавленным элементом.
| Параметры значения |
|
|---|---|
| Возвращает | новое неизменяемое дерево множеств, содержащее |
Источник
Начальная часть коллекции без последнего элемента.
Примечание: даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.
| Классы определений | IterableOps |
|---|
Источник
Вычисляет пересечение между этим множеством и другим множеством.
| Параметры значения |
|
|---|---|
| Возвращает | новое множество, содержащее все элементы, которые присутствуют как в этом множестве, так и в заданном множестве |
| Определяющие классы | SetOps |
Исходный код
Проверяет, является ли неизменяемое дерево множеств пустым.
Примечание: Реализации в подклассах, которые не являются многократно проходимыми, должны следить за тем, чтобы не использовать какие-либо элементы при вызове isEmpty.
| Возвращает |
|
|---|---|
| Определяющие классы | IterableOnceOps |
Исходный код
Итератор может быть использован только один раз
Исходный код
def iteratorFrom(start: A): Iterator[A]
Создаёт итератор, содержащий все значения из этого набора, большие или равные start согласно порядку этого набора. x.iteratorFrom(y) эквивалентно, но обычно более эффективно, чем x.from(y).iterator
| Параметры значения |
|
|---|
Исходный код
override def last: A
Выбирает последний элемент.
| Возвращает | Последний элемент этого неизменяемого дерева множеств. |
|---|---|
| Выбрасывает |
|
| Определяющие классы | IterableOps |
Исходный код
Находит наибольший элемент.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наибольший элемент этого неизменяемого дерева множеств относительно порядка |
| Выбрасывает |
|
| Определяющие классы | SortedSetOps -> IterableOnceOps |
Исходный код
Находит наибольший элемент, меньший заданного ключа.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Определяющие классы | SortedSetOps |
Исходный код
Находит наименьший элемент.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | наименьший элемент этого неизменяемого дерева множеств относительно порядка |
| Выбрасывает |
|
| Определяющие классы | SortedSetOps -> IterableOnceOps |
Source
Найти наименьший элемент, больший или равный заданному ключу.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Классы определений | SortedSetOps |
Source
Пара элементов: во-первых, все элементы, удовлетворяющие предикату p, и, во-вторых, все элементы, которые не удовлетворяют. Интересно, потому что это разделяет коллекцию на две части.
Указанная здесь реализация по умолчанию требует двух проходов по коллекции. У строгих коллекций есть переопределенная версия partition в StrictOptimizedIterableOps, которая требует только одного прохода.
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
|---|
Source
Создает проекцию диапазона этой коллекции с нижней и верхней границами.
| Параметры значения |
|
|---|---|
| Классы определений | SortedOps |
Source
Создает проекцию диапазона этой коллекции. Любые изменения в проекции диапазона обновят эту коллекцию и наоборот.
Примечание: ключи не гарантируются как согласованные между этой коллекцией и проекцией. Это имеет место для буферов, где индексация относительна к проекции.
| Параметры значения |
|
|---|
Source
Создает новую неизменяемую коллекцию деревьев из этой неизменяемой коллекции деревьев, удаляя все элементы из другой коллекции.
| Параметры значения |
|
|---|---|
| Возвращает | новая неизменяемая коллекция деревьев с удаленными элементами, опуская дубликаты. |
| Классы определений | SetOps |
Source
Размер этой неизменяемой коллекции деревьев.
| Возвращает | количество элементов в этой неизменяемой коллекции деревьев. |
|---|---|
| Классы определений | IterableOnceOps |
Source
Выбирает интервал элементов. Возвращаемая неизменяемая коллекция деревьев состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
| Параметры значения |
|
|---|---|
| Возвращает | неизменяемый набор дерева, содержащий элементы, большие или равные индексу |
| Определяющие классы | IterableOps -> IterableOnceOps |
Исходный код
Объект-компаньон этого упорядоченного множества, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Определяющие классы | SortedSet -> SortedSet -> SortedSetOps |
Исходный код
Разделяет этот неизменяемый набор дерева на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
| Параметры значения |
|
|---|---|
| Возвращает | пара, состоящая из самого длинного префикса этого неизменяемого набора дерева, элементы которого удовлетворяют |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
Исходный код
Возвращает scala.collection.Stepper для элементов этой коллекции.
Stepper позволяет создавать Java-поток для работы с коллекцией, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться как итератор, который не упаковывает элементы.
Неявный параметр scala.collection.StepperShape определяет тип возвращаемого Stepper в соответствии с типом элемента этой коллекции.
Для коллекций
Int,Short,ByteилиCharвозвращается scala.collection.IntStepperДля коллекций
DoubleилиFloatвозвращается scala.collection.DoubleStepperДля коллекций
Longвозвращается scala.collection.LongStepperДля любого другого типа элементов возвращается scala.collection.AnyStepper
Обратите внимание, что этот метод переопределяется в подклассах, а тип возвращаемого значения уточняется до S with EfficientSplit, например, scala.collection.IndexedSeqOps.stepper. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Stepper могут быть преобразованы только в последовательные потоки.
| Определяющие классы | IterableOnce |
|---|
Исходный код
Остальная часть коллекции без её первого элемента.
| Определяющие классы | IterableOps |
|---|
Исходный код
Выбирает первые n элементов.
| Параметры значения |
|
|---|---|
| Возвращает | неизменяемый набор дерева, содержащий только первые |
| Классы определений | IterableOps -> IterableOnceOps |
Исходный код
Коллекция, содержащая последние n элементы этой коллекции.
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.
| Классы определений | StrictOptimizedIterableOps -> IterableOps |
|---|
Исходный код
Берет самое длинное префикс элементов, удовлетворяющих предикату.
| Параметры значения |
|
|---|---|
| Возвращает | самый длинный префикс этого неизменяемого набора дерева, чьи элементы все удовлетворяют предикату |
| Классы определений | IterableOps -> IterableOnceOps |
Наследованные методы
Исходный код
Псевдоним для intersect
| Наследуется от | SetOps |
|---|
Исходный код
Псевдоним для diff
| Наследуется от | SetOps |
|---|
Исходный код
final override def +(elem: A): C
Псевдоним для incl
| Классы определений | SetOps -> SetOps |
|---|---|
| Наследуется от | SetOps |
Исходный код
final def ++(that: IterableOnce[A]): C
Псевдоним для concat
| Наследуется от | SetOps |
|---|
Исходный код
final def ++[B >: A](suffix: IterableOnce[B]): CC[B]
Псевдоним для concat
| Наследуется от | IterableOps |
|---|
Исходный код
final override def -(elem: A): C
Псевдоним для excl
| Классы определений | SetOps -> SetOps |
|---|---|
| Наследуется от | SetOps |
Исходный код
final override def --(that: IterableOnce[A]): C
Псевдоним для removedAll
| Классы определений | SetOps -> SetOps |
|---|---|
| Наследуется от | SetOps |
Source
Добавляет все элементы этой коллекции в строковый буфер. Записываемый текст состоит из строковых представлений (в соответствии с методом 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 |
Source
Добавляет все элементы этой коллекции в строковый буфер, используя строку-разделитель. Записываемый текст состоит из строковых представлений (в соответствии с методом 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 |
Source
Добавляет все элементы этой коллекции в строковый буфер, используя начальную, конечную и разделительные строки. Записываемый текст начинается со строки 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 |
Source
Компонует два экземпляра Function1 в новый Function1, применяя этот функцию в первую очередь.
| Параметры типов |
|
|---|---|
| Параметры значений |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Source
Проверяет, содержится ли некоторый элемент в этом множестве.
Этот метод эквивалентен contains. Он позволяет интерпретировать множества как предикаты.
| Параметры значений |
|
|---|---|
| Возвращает |
|
| Унаследовано от | SetOps |
Source
Метод, который следует вызывать из каждого хорошо спроектированного метода equals, который может быть переопределён в подклассе. См. Programming in Scala, Глава 28 для обсуждения и проектирования.
| Параметры значения |
|
|---|---|
| Возвращает | true, если этот экземпляр потенциально может быть равен |
| Унаследовано от | Set |
Источник
Создаёт новую упорядоченную коллекцию, применяя частичную функцию ко всем элементам этого множества, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новое множество, полученное путём применения данной частичной функции |
| Классы определений | StrictOptimizedSortedSetOps -> SortedSetOps |
| Унаследовано от | StrictOptimizedSortedSetOps |
Источник
override def collect[B](pf: PartialFunction[A, B]): CC[B]
Создаёт новую итерируемую коллекцию, применяя частичную функцию ко всем элементам этой итерируемой коллекции, для которых функция определена.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, полученная путём применения данной частичной функции |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение option, содержащее pf, применённое к первому значению, для которого оно определено, или |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Источник
def compose[A](g: A => A): A => R
Компонует две инстанции Function1 в новую Function1, с применением этой функции последней.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая функция |
| Унаследовано от | Function1 |
Источник
def concat[B >: A](suffix: IterableOnce[B]): CC[B]
Возвращает новую итерируемую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов итерируемой коллекции — наиболее общий суперкласс, охватывающий типы элементов двух операндов.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, за которыми следуют все элементы |
| Наследуется от | IterableOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs, начиная с индекса start, не более чем len элементами из этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или len элементов будут скопированы.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование не определено и может быть изменено. |
| Наследуется от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs, начиная с индекса start, значениями из этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование не определено и может быть изменено. |
| Наследуется от | IterableOnceOps |
Исходный код
Копирует элементы в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs, начиная с индекса start, значениями из этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции или будет достигнут конец массива.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | количество элементов, записанных в массив |
| Примечание | Переиспользование: После вызова этого метода итератор, на котором он был вызван, следует удалить. Его использование не определено и может быть изменено. |
| Наследуется от | IterableOnceOps |
Исходный код
Проверяет, соответствуют ли каждый элемент итератора этой коллекции соответствующему элементу другой коллекции, удовлетворяя предикат проверки.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Подсчитывает количество элементов в коллекции, удовлетворяющих предикату.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает | количество элементов, удовлетворяющих предикату |
| Унаследовано от | IterableOnceOps |
Источник
override def empty: CC[A]
Пустая коллекция итератора того же типа, что и этот итератор
| Возвращает | пустая коллекция итератора типа |
|---|---|
| Классы определения | SortedSetFactoryDefaults -> IterableOps |
| Унаследовано от | SortedSetFactoryDefaults |
Источник
Проверяет, удовлетворяет ли предикату хотя бы один элемент этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
Выбирает все элементы этой коллекции итератора, которые не удовлетворяют предикату.
| Параметры значения |
|
|---|---|
| Возвращает | новая коллекция итератора, состоящая из всех элементов этой коллекции итератора, которые не удовлетворяют заданному предикату |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой есть.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | значение типа option, содержащее первый элемент в коллекции, который удовлетворяет |
| Унаследовано от | IterableOnceOps |
Источник
def firstKey: A
Возвращает первый ключ коллекции.
| Унаследовано от | SortedSetOps |
|---|
Источник
Создает новую отсортированную коллекцию, применяя функцию ко всем элементам этого множества и используя элементы полученных коллекций.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новое множество, полученное путем применения заданной функции, принимающей коллекции |
| Классы определений | StrictOptimizedSortedSetOps -> SortedSetOps |
| Унаследовано от | StrictOptimizedSortedSetOps |
Источник
override def flatMap[B](f: A => 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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, полученная путем применения заданной функции, принимающей коллекции |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
override def flatten[B](implicit toIterableOnce: A => 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)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, полученная путем конкатенации всех итерируемых коллекций элементов. |
| Классы определений | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
Сворачивает элементы этой коллекции, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат применения оператора сворачивания |
| Унаследовано от | IterableOnceOps |
Источник
def foldLeft[B](z: B)(op: (B, A) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этого набора, слева направо.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип основного набора не упорядочен или оператор не ассоциативен и не коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
def foldRight[B](z: B)(op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этого набора и начальному значению, справа налево.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип основного набора не упорядочен или оператор не ассоциативен и не коммутативен.
| Тип параметров |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Унаследовано от | IterableOnceOps |
Источник
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершиться для наборов бесконечного размера.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Унаследовано от | IterableOnceOps |
Источник
override protected def fromSpecific(coll: IterableOnce[A]): CC[A]
Определяет, как преобразовать заданный Iterable[A] в набор типа C.
Этот процесс может быть выполнен строго или нестрого (т.е. без вычисления элементов результирующих наборов). Другими словами, этот метод определяет модель вычисления набора.
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как показывает аннотация |
|---|---|
| Классы-определения | SortedSetFactoryDefaults -> IterableOps |
| Унаследовано от | SortedSetFactoryDefaults |
Исходный код
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором.
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение |
Карта, где ключи сопоставлены с итерируемыми коллекциями, при этом соблюдается следующее инвариантное свойство: (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: A => K)(f: A => B)(reduce: (B, B) => B): Map[K, B]
Разделяет эту итерируемую коллекцию на карту в соответствии с функцией-дискриминатором key. Все значения, имеющие одинаковый дискриминатор, затем преобразуются функцией f и затем сводятся к одному значению с помощью функции reduce.
Эквивалентно groupBy(key).mapValues(_.map(f).reduce(reduce)), но более эффективно.
def occurrences[A](as: Seq[A]): Map[A, Int] = as.groupMapReduce(identity)(_ => 1)(_ + _)
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Унаследовано от | IterableOps |
|---|
Исходный код
Разделяет элементы на итерируемые коллекции фиксированного размера.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | Итератор, генерирующий итерируемые коллекции размером |
| См. также | scala.collection.Iterator, метод |
| Унаследовано от | IterableOps |
Source
Вычислить значение хэш-кода для объекта.
По умолчанию алгоритм хэширования зависит от платформы.
Обратите внимание, что для двух объектов могут быть одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)), но они могут быть не равны (o1.equals(o2) возвращает false). Дегенеративная реализация может всегда возвращать 0. Однако, требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true), у них были одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода убедитесь, что поведение согласуется с методом equals.
| Возвращает | значение хэш-кода для данного объекта. |
|---|---|
| Классы-определения | Set -> Any |
| Унаследовано от | Set |
Source
def headOption: Option[A]
Возвращает первый элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращает | первый элемент этой итерируемой коллекции, если она не пуста, |
|---|---|
| Унаследовано от | IterableOps |
Source
Итерирует по начальным частям этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений init.
Примечание: Даже при применении к представлению или ленивой коллекции элементы будут всегда вычисляться.
| Возвращает | итератор по всем начальным частям этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Source
override def isTraversableAgain: Boolean
Проверяет, может ли эта итерируемая коллекция быть многократно пройдена. Всегда истинно для Iterable и ложно для Iterator, если не переопределено.
| Возвращает |
|
|---|---|
| Классы-определения | IterableOps -> IterableOnceOps |
| Унаследовано от | IterableOps |
Source
Объект-компаньон этого неизменяемого множества, предоставляющий различные методы фабрики.
| Примечание | При реализации пользовательского типа коллекции и уточнении |
|---|---|
| Классы-определения | Set -> Set -> Iterable -> Iterable -> IterableOps |
| Унаследовано от | Set |
Source
| Возвращает | Количество элементов в этой коллекции, если его можно вычислить быстро, -1 в противном случае. Быстро обычно означает: Не требует обхода коллекции. |
|---|---|
| Унаследовано от | IterableOnce |
Source
def lastKey: A
Возвращает последний ключ коллекции.
| Унаследовано от | SortedSetOps |
|---|
Source
def lastOption: Option[A]
Возвращает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Возвращаемое значение | последний элемент этой итерируемой коллекции, если она не пуста, |
|---|---|
| Унаследовано от | IterableOps |
Source
Аналогично 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 |
Source
Создаёт новую сортированную коллекцию, применяя функцию ко всем элементам этого множества.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новое множество, полученное путём применения данной функции |
| Классы определения | StrictOptimizedSortedSetOps -> SortedSetOps |
| Унаследовано от | StrictOptimizedSortedSetOps |
Source
override def map[B](f: A => B): CC[B]
Создаёт новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | новая итерируемая коллекция, полученная путём применения данной функции |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Source
Находит первый элемент, который даёт наибольшее значение, измеряемое функцией f.
Примечание: не завершит работу для коллекций бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | первый элемент этого набора с наибольшим значением, измеренным функцией f относительно порядка |
| Throws |
|
| Inherited from | IterableOnceOps |
Source
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
Примечание: не будет завершаться для наборов бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | значение опционального типа, содержащее первый элемент этого набора с наибольшим значением, измеренным функцией f относительно порядка |
| Inherited from | IterableOnceOps |
Source
Находит наибольший элемент.
Примечание: не будет завершаться для наборов бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | значение опционального типа, содержащее наибольший элемент этого набора относительно порядка |
| Inherited from | IterableOnceOps |
Source
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не будет завершаться для наборов бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Throws |
|
| Inherited from | IterableOnceOps |
Source
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
Примечание: не будет завершаться для наборов бесконечного размера.
| Type parameters |
|
|---|---|
| Value parameters |
|
| Returns | значение опционального типа, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка |
| Inherited from | IterableOnceOps |
Source
Находит наименьший элемент.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа option, содержащее наименьший элемент этой коллекции относительно упорядочения |
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этой коллекции в строке.
Делегирует addString, который можно переопределить.
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (с точки зрения метода |
|---|---|
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этой коллекции в строке с использованием разделительной строки.
Делегирует addString, который можно переопределить.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. В результирующей строке строковые представления (с точки зрения метода |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
Отображает все элементы этой коллекции в строке с использованием начальной, конечной и разделительной строк.
Делегирует addString, который можно переопределить.
| Параметры значения |
|
|---|---|
| Возвращает | строковое представление этой коллекции. Результирующая строка начинается со строки |
| Пример |
|
| Унаследовано от | IterableOnceOps |
Source
override protected def newSpecificBuilder: Builder[A, CC[A]]
| Возвращает | строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, scala.collection.View или scala.collection.immutable.LazyList), реализовать этот метод возможно, но полученный |
|---|---|
| Примечание |
При реализации пользовательского типа коллекции и уточнении Как свидетельствует аннотация |
| Классы-определения | SortedSetFactoryDefaults -> IterableOps |
| Унаследовано от | SortedSetFactoryDefaults |
Источник
Проверяет, не пуста ли коллекция.
| Возвращает |
|
|---|---|
| Унаследовано от | IterableOnceOps |
Источник
override def partitionMap[A1, A2](f: A => Either[A1, A2]): (CC[A1], CC[A2])
Применяет функцию f к каждому элементу итерируемой коллекции и возвращает пару итерируемых коллекций: первая содержит те значения, возвращенные функцией f, которые были обернуты в scala.util.Left, а вторая — те, которые были обернуты в scala.util.Right.
Пример:
val xs = Iterable(1, "one", 2, "two", 3, "three") partitionMap {
case i: Int => Left(i)
case s: String => Right(s)
}
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | пару итерируемых коллекций: первая содержит те значения, возвращенные |
| Классы-определения | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Вычисляет произведение элементов этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | произведение всех элементов этой коллекции относительно операции |
| Унаследовано от | IterableOnceOps |
Источник
def rangeFrom(from: A): C
Создает проекцию диапазона этой коллекции без верхней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Source
def rangeTo(to: A): C
Создать проекцию диапазона этой коллекции без нижней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedSetOps |
Source
def rangeUntil(until: A): C
Создаёт проекцию диапазона этой коллекции без нижней границы.
| Параметры значения |
|
|---|---|
| Унаследовано от | SortedOps |
Source
def reduce[B >: A](op: (B, B) => B): B
Приводит элементы этой коллекции к одному значению с помощью указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Результат применения оператора reduce |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
def reduceLeft[B >: A](op: (B, A) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип основной коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Source
def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип основной коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Source
def reduceOption[B >: A](op: (B, B) => B): Option[B]
Приводит элементы этой коллекции, если они есть, к одному значению с помощью указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | Значение типа Option, содержащее результат применения оператора reduce |
| Унаследовано от | IterableOnceOps |
Источник
def reduceRight[B >: A](op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции, слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | результат вставки |
| Исключения |
|
| Унаследовано от | IterableOnceOps |
Источник
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | значение типа Option, содержащее результат |
| Унаследовано от | IterableOnceOps |
Источник
| Унаследовано от | IterableOnceOps |
|---|
Источник
def scan[B >: A](z: B)(op: (B, B) => B): CC[B]
Вычисляет префиксный сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новая итерируемая коллекция, содержащая префиксное сканирование элементов в этой итерируемой коллекции |
| Унаследовано от | IterableOps |
Источник
override def scanLeft[B](z: B)(op: (B, A) => B): CC[B]
Создаёт итерируемую коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | набор с промежуточными результатами |
| Классы определения | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
def scanRight[B](z: B)(op: (A, B) => B): CC[B]
Создает набор, содержащий кумулятивные результаты применения оператора справа налево. Головной элемент набора — последний кумулятивный результат.
Примечание: не завершится для наборов бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
Примечание: даже при применении к представлению или ленивому набору всегда будет принудительно вычислять элементы.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | набор с промежуточными результатами |
| Унаследовано от | IterableOps |
Исходный код
Сравнивает размер этого набора итераций с размером другого Iterable.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
Значение x < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size Реализация метода здесь не вызывает |
| Унаследовано от | IterableOps |
Исходный код
Сравнивает размер этого набора итераций со значением-тестом.
| Параметры значения |
|
|---|---|
| Возвращаемое значение |
Значение x < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize Реализация метода здесь не вызывает |
| См. также | |
| Унаследовано от | IterableOps |
Исходный код
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 |
|---|
Исходный код
Группирует элементы в блоки фиксированного размера, перемещая «скользящее окно» по ним (в отличие от разбиения, как в grouped.)
Возвращаемый итератор будет пустым, когда вызывается на пустом наборе. Последний элемент, который производит итератор, может быть меньше размера окна, когда исходный набор не исчерпывается окном до его конца и его последний элемент не пропускается на шаге до него.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Наследуется от | IterableOps |
Источник
Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от их разбиения, как это делается в grouped.)
Пустой набор возвращает пустой итератор, а непустой набор, содержащий меньше элементов, чем размер окна, возвращает итератор, который будет производить исходный набор в качестве своего единственного элемента.
| Параметры значения |
|
|---|---|
| Возвращает | Итератор, производящий итерируемые наборы размера |
| См. также | scala.collection.Iterator, метод |
| Пример |
|
| Наследуется от | IterableOps |
Источник
Разделяет этот итерируемый набор на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентен (но, возможно, более эффективен, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращает | пара итерируемых наборов, состоящих из первых |
| Классы определений | IterableOps -> IterableOnceOps |
| Наследуется от | IterableOps |
Источник
Проверяет, является ли этот набор подмножеством другого набора.
| Параметры значения |
|
|---|---|
| Возвращает |
|
| Наследуется от | SetOps |
Источник
Итератор по всем подмножествам этого набора.
| Возвращает | итератор. |
|---|---|
| Наследуется от | SetOps |
Источник
Итератор по всем подмножествам этого набора заданного размера. Если запрашиваемый размер невозможен, возвращается пустой итератор.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | итератор. |
| Унаследовано от | SetOps |
Источник
Суммирует элементы этой коллекции.
Примечание: не завершится для коллекций бесконечного размера.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | сумма всех элементов этой коллекции относительно оператора |
| Унаследовано от | IterableOnceOps |
Источник
Итерируется по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результатами последовательных применений tail.
| Возвращаемое значение | итератор по всем хвостам этой итерируемой коллекции |
|---|---|
| Пример |
|
| Унаследовано от | IterableOps |
Источник
override def tapEach[U](f: A => U): C
Применяет функцию с побочным эффектом к каждому элементу в этой коллекции. Строгие коллекции применят 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 |
|---|
Источник
def toIndexedSeq: IndexedSeq[A]
| Унаследовано от | IterableOnceOps |
|---|
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
def toSeq: Последовательность[A]
| Возвращает | Это коллекция как |
|---|---|
| Унаследовано от | IterableOnceOps |
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
Возвращает строковое представление объекта.
По умолчанию представление зависит от платформы.
| Возвращает | строковое представление объекта. |
|---|---|
| Классы определения | Множество -> Функция1 -> Итерируемый -> Любой |
| Унаследовано от | Множество |
Source
| Унаследовано от | IterableOnceOps |
|---|
Source
def transpose[B](implicit asIterable: A => Итерируемый[B]): CC[CC[B]]
Транспонирует эту итерируемую коллекцию итерируемых коллекций в итерируемую коллекцию итерируемых коллекций.
Тип результирующей коллекции будет определяться статическим типом итерируемой коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
Примечание: даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычисляться.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | двухмерная итерируемая коллекция итерируемых коллекций, в которой n-ый ряд является n-ым столбцом этой итерируемой коллекции. |
| Исключения |
|
| Унаследовано от | IterableOps |
Source
Вычисляет объединение множества и другого множества.
| Параметры значения |
|
|---|---|
| Возвращает | новое множество, состоящее из всех элементов, которые находятся в этом множестве или в данном множестве |
| Унаследовано от | SetOps |
Source
| Описание классов | SortedSet -> SortedSetOps -> SortedSet -> SortedSetOps |
|---|---|
| Унаследовано от | SortedSet |
Исходный код
override def unzip[A1, A2](implicit asPair: A => (A1, A2)): (CC[A1], CC[A2])
Преобразует это итерируемое множество пар в два множества — первое и второе получение каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | пара итерируемых множеств, содержащая первую и вторую половины каждой пары элементов этого итерируемого множества. |
| Описание классов | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
override def unzip3[A1, A2, A3](implicit asTriple: A => (A1, A2, A3)): (CC[A1], CC[A2], CC[A3])
Преобразует это итерируемое множество троек в три множества — первого, второго и третьего элементов каждой тройки.
val xs = Iterable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three),
// Iterable(1, 2, 3))
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращаемое значение | тройка итерируемых множеств, содержащая первый, второй и третий элементы каждой тройки элементов этого итерируемого множества. |
| Описание классов | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Исходный код
Просмотр элементов этого множества.
| Унаследовано от | IterableOps |
|---|
Исходный код
Создает нестрогий фильтр этого множества.
Примечание: различие между c filter p и c withFilter p заключается в том, что первый создает новое множество, а второй только ограничивает область действия последующих map, flatMap, foreach и withFilter операций.
Примечание: может возвращать разные результаты для разных запусков, если тип базового множества не упорядочен.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | объект класса |
| Описание классов | SortedSetFactoryDefaults -> IterableOps |
| Унаследовано от | SortedSetFactoryDefaults |
Исходный код
Возвращает множество, сформированное из этого множества и другого итерируемого набора, комбинируя соответствующие элементы парами. Если один из двух наборов длиннее другого, его оставшиеся элементы игнорируются.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новое множество, содержащее пары, состоящие из соответствующих элементов этого множества и |
| Определяющие классы | StrictOptimizedSortedSetOps -> SortedSetOps |
| Унаследовано от | StrictOptimizedSortedSetOps |
Источник
override def zip[B](that: IterableOnce[B]): CC[(A, B)]
Возвращает итерируемый набор, сформированный из этого итерируемого набора и другого итерируемого набора, комбинируя соответствующие элементы парами. Если один из двух наборов длиннее другого, его оставшиеся элементы игнорируются.
| Параметры типа |
|
|---|---|
| Параметры значения |
|
| Возвращает | новый итерируемый набор, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Возвращает итерируемый набор, сформированный из этого итерируемого набора и другого итерируемого набора, комбинируя соответствующие элементы парами. Если один из двух наборов короче другого, для расширения короче набора до длины более длинного используются заполнители.
| Параметры значения |
|
|---|---|
| Возвращает | новый набор типа |
| Унаследовано от | IterableOps |
Источник
override def zipWithIndex: CC[(A, Int)]
Комбинирует этот итерируемый набор с его индексами.
| Возвращает | Новый итерируемый набор, содержащий пары, состоящие из всех элементов этого итерируемого набора, соединённых с их индексом. Индексы начинаются с |
|---|---|
| Пример | |
| Определяющие классы | StrictOptimizedIterableOps -> IterableOps -> IterableOnceOps |
| Унаследовано от | StrictOptimizedIterableOps |
Источник
Псевдоним для union
| Унаследовано от | SetOps |
|---|
Неявные параметры
Source
© 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/TreeSet.html