Трейт scala.collection.SortedSet
Компаньон объект SortedSet
трейт SortedSet[A] extends Set[A] with SortedSetOps[A, SortedSet, SortedSet[A]] with SortedSetFactoryDefaults[A, SortedSet, Set]
Члены-значения (абстрактные)
абстрактный def contains(elem: A): Boolean
- Definition Classes
- SetOps
абстрактный def diff(that: Set[A]): SortedSet[A]
Вычисляет разность между этим множеством и другим множеством.
- that
множество элементов, которые нужно исключить.
- returns
множество, содержащее элементы этого множества, которые не содержатся в заданном множестве
that.
- Definition Classes
- SetOps
абстрактный def iterator: Iterator[A]
Итератор может быть использован только один раз
- Definition Classes
- IterableOnce
абстрактный def iteratorFrom(start: A): Iterator[A]
Создаёт итератор, содержащий все значения из этого набора, которые больше или равны start в соответствии с порядком этого набора. x.iteratorFrom(y) эквивалентно, но обычно эффективнее, чем x.from(y).iterator
- start
Нижняя граница (включительно) итератора
- Definition Classes
- SortedSetOps
абстрактный def ordering: Ordering[A]
- Definition Classes
- SortedOps
абстрактный def rangeImpl(from: Option[A], until: Option[A]): SortedSet[A]
Создаёт проекцию диапазона этого набора. Любые изменения в проекции диапазона изменят этот набор и наоборот.
Примечание: ключи не гарантируются как постоянные между этим набором и проекцией. Это верно для буферов, где индексация относительна к проекции.
- from
Нижняя граница (включительно) проекции диапазона.
Noneесли нижней границы нет.- until
Верхняя граница (исключительно) проекции диапазона.
Noneесли верхней границы нет.
- Definition Classes
- SortedOps
Члены-значения конкретного типа
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- returns
trueесли !(this == that), в противном случае false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращается значение хеша, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## вернёт одинаковое значение хеша для каждого из них. Для null возвращает хешкод, где null.hashCode вызывает NullPointerException.
- returns
значение хеша, согласованное с ==
- Definition Classes
- AnyRef → Any
final def &(that: Set[A]): SortedSet[A]
final def &~(that: Set[A]): SortedSet[A]
final def ++(that: IterableOnce[A]): SortedSet[A]
final def ++[B >: A](suffix: IterableOnce[B]): Set[B]
Псевдоним для concat
- Definition Classes
- IterableOps
- Annotations
- @inline()
def ->[B](y: B): (SortedSet[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из SortedSet[A] вArrowAssoc[SortedSet[A]] с помощью метода ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
final def addString(b: mutable.StringBuilder): mutable.StringBuilder
Добавляет все элементы этого набора в строковый буфер. Текст состоит из строковых представлений (с помощью метода toString) всех элементов набора без разделителя.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
- b
строковый буфер, в который добавляются элементы.
- returns
строковый буфер
bв который были добавлены элементы.
- Definition Classes
- IterableOnceOps
- Annotations
- @inline()
final def addString(b: mutable.StringBuilder, sep: String): mutable.StringBuilder
Добавляет все элементы этого набора в строковый буфер с использованием разделительной строки. Записанный текст состоит из строковых представлений (относительно метода toString) всех элементов этого набора, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
- b
строковый буфер, в который добавляются элементы.
- sep
строка-разделитель.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- IterableOnceOps
- Annotations
- @inline()
def addString(b: mutable.StringBuilder, start: String, sep: String, end: String): mutable.StringBuilder
Добавляет все элементы этого набора в строковый буфер, используя начальную, конечную и разделительные строки. Записанный текст начинается со строки start и заканчивается строкой end. Внутри строковые представления (относительно метода toString) всех элементов этого набора разделяются строкой sep.
Пример:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
- b
строковый буфер, в который добавляются элементы.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- IterableOnceOps
def andThen[A](g: (Boolean) => A): (A) => A
Компонует два экземпляра Function1 в новый Function1, применяя этот метод в первую очередь.
- A
тип результата функции
g- g
функция R => A
- returns
новая функция
fтакая, чтоf(x) == g(apply(x))
- Definition Classes
- Function1
- Annotations
- @unspecialized()
final def apply(elem: A): Boolean
Проверяет, содержится ли какой-либо элемент в этом наборе.
Этот метод эквивалентен contains. Он позволяет интерпретировать наборы как предикат.
- elem
элемент, для проверки на принадлежность.
- returns
trueеслиelemсодержится в этом наборе,falseв противном случае.
final def asInstanceOf[T0]: T0
Преобразует объект-получатель к типу T0.
Обратите внимание, что успех преобразования во время выполнения зависит от семантики стирания Scala. Таким образом, выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] - нет. В последнем примере, поскольку аргумент типа стирается на этапе компиляции, проверить, относятся ли элементы списка к требуемому типу, невозможно.
- returns
объект-получатель.
- Definition Classes
- Any
- Исключения
ClassCastExceptionесли объект-получатель не является экземпляром стирания типаT0.
def canEqual(that: Any): Boolean
Метод, который следует вызывать из каждого хорошо спроектированного метода equals, который может быть переопределён в подклассе. См. Programming in Scala, Chapter 28 для обсуждения и проектирования.
- that
значение, на предмет возможного равенства
- returns
true, если этот экземпляр потенциально может быть равен
that, иначе false
def className: String
Определяет префикс представления этого объекта toString.
Рекомендуется возвращать имя конкретного типа коллекции, но не подклассы реализации. Например, для ListMap этот метод должен возвращать "ListMap", а не "Map" (супертип) или "Node" (подкласс реализации).
По умолчанию возвращает "Iterable". Он переопределён для основных типов коллекций "Seq", "IndexedSeq", "LinearSeq", "Buffer", "Set", "Map", "SortedSet", "SortedMap" и "View".
- returns
строковое представление, начинающее результат применения
toStringк этой итерируемой коллекции. По умолчанию префикс строки — простое имя класса коллекции — итерируемая коллекция.
- Attributes
- protected[this]
- Definition Classes
- Iterable
def clone(): AnyRef
Создаёт копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия объекта-получателя.
final def coll: SortedSet.this.type
- возвращает
Это коллекцию как
C.
- Атрибуты
- protected
- Классы определения
- Iterable → IterableOps
def collect[B](pf: PartialFunction[A, B])(implicit ev: Ordering[B]): SortedSet[B]
Создаёт новую упорядоченную коллекцию, применяя частичную функцию ко всем элементам этого набора, для которых функция определена.
- B
тип элементов возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и отображает набор.
- возвращает
новый набор, полученный путём применения данной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Классы определения
- SortedSetOps
def collect[B](pf: PartialFunction[A, B]): Set[B]
Создаёт новую итерируемую коллекцию, применяя частичную функцию ко всем элементам этой итерируемой коллекции, для которых функция определена.
- B
тип элементов возвращаемой итерируемой коллекции.
- pf
частичная функция, которая фильтрует и отображает итерируемую коллекцию.
- возвращает
новая итерируемая коллекция, полученная путём применения данной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Классы определения
- IterableOps → IterableOnceOps
- Примечание
Повторное использование: После вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе также.
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент коллекции, для которого заданная частичная функция определена, и применяет частичную функцию к нему.
Примечание: может не завершаться для бесконечно больших коллекций.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- pf
частичная функция
- возвращает
значение опции, содержащее результат применения pf к первому значению, для которого оно определено, или
Noneесли такого значения нет.
- Классы определения
- IterableOnceOps
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def compose[A](g: (A) => A): (A) => Boolean
Компонует две экземпляры Function1 в новую Function1, при этом эта функция применяется последней.
- A
тип, к которому можно применить функцию
g- g
функция A => T1
- возвращает
новая функция
fтакая, чтоf(x) == apply(g(x))
- Классы определения
- Function1
- Аннотации
- @unspecialized()
def concat(that: IterableOnce[A]): SortedSet[A]
Создаёт новый набор, добавляя все элементы, содержащиеся в другой коллекции, в этот набор, исключая дубликаты.
Этот метод принимает коллекцию элементов и добавляет все элементы, исключая дубликаты, в набор.
Пример:
scala> val a = Set(1, 2) concat Set(2, 3) a: scala.collection.immutable.Set[Int] = Set(1, 2, 3)
- that
коллекция, содержащая добавляемые элементы.
- возвращает
новый набор с добавленными элементами, исключая дубликаты.
- Классы определения
- SetOps
def concat[B >: A](suffix: IterableOnce[B]): Set[B]
Возвращает новую итерируемую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элемента итерируемой коллекции — это самый специфичный суперкласс, охватывающий типы элементов двух операндов.
- B
тип элемента возвращаемой коллекции.
- suffix
итерируемая последовательность для добавления.
- возвращает
новая итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, за которыми следуют все элементы
suffix.
- Классы определения
- IterableOps
def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Int
Копирование элементов в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start не более чем len элементами из этого набора.
Копирование остановится, когда будут скопированы все элементы этого набора, или будет достигнут конец массива, или len элементов будут скопированы.
- B
тип элементов массива.
- xs
массив для заполнения.
- start
начальный индекс xs.
- len
максимальное количество копируемых элементов.
- returns
количество элементов, записанных в массив
- Definition Classes
- IterableOnceOps
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван. Использование его не определено и может быть изменено. Примечание: не завершится для наборов бесконечного размера.
def copyToArray[B >: A](xs: Array[B], start: Int): Int
Копирование элементов в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этого набора.
Копирование остановится, когда будут скопированы все элементы этого набора или будет достигнут конец массива.
- B
тип элементов массива.
- xs
массив для заполнения.
- start
начальный индекс xs.
- returns
количество элементов, записанных в массив. Примечание: не завершится для наборов бесконечного размера.
- Definition Classes
- IterableOnceOps
def copyToArray[B >: A](xs: Array[B]): Int
Копирование элементов в массив, возвращая количество скопированных элементов.
Заполняет заданный массив xs начиная с индекса start значениями из этого набора.
Копирование остановится, когда будут скопированы все элементы этого набора или будет достигнут конец массива.
- B
тип элементов массива.
- xs
массив для заполнения.
- returns
количество элементов, записанных в массив. Примечание: не завершится для наборов бесконечного размера.
- Definition Classes
- IterableOnceOps
def corresponds[B](that: IterableOnce[B])(p: (A, B) => Boolean): Boolean
Проверяет, удовлетворяет ли каждый элемент итератора этого набора условию предиката в отношении соответствующего элемента другого набора.
- B
тип элементов
that- that
другой набор
- p
предикат, связывающий элементы обоих наборов
- returns
trueесли оба набора имеют одинаковую длину иp(x, y)равноtrueдля всех соответствующих элементовxэтого итератора иyитератораthat, в противном случаеfalse
- Definition Classes
- IterableOnceOps
def count(p: (A) => Boolean): Int
Подсчитывает количество элементов в наборе, удовлетворяющих предикату.
- p
предикат для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- IterableOnceOps
def drop(n: Int): SortedSet[A]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
- n
количество элементов для удаления из этого итерируемого набора.
- returns
итерируемый набор, состоящий из всех элементов этого итерируемого набора, кроме первых
nэлементов, или пустой набор, если у этого итерируемого набора меньшеnэлементов. Еслиnотрицательно, не удалять никаких элементов.
- Definition Classes
- IterableOps → IterableOnceOps
- Note
Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.
def dropRight(n: Int): SortedSet[A]
Выбирает все элементы, кроме последних n.
Примечание: результаты могут отличаться при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов, которые нужно удалить из этой итерируемой коллекции.
- returns
итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, кроме последних
nэлементов, или же пустая итерируемая коллекция, если эта итерируемая коллекция содержит меньше чемnэлементов. Еслиnотрицательное, не удалять никаких элементов.
- Definition Classes
- IterableOps
def dropWhile(p: (A) => Boolean): SortedSet[A]
Удаляет наибольший префикс элементов, удовлетворяющих предикату.
Примечание: результаты могут отличаться при разных запусках, если тип базовой коллекции не упорядочен.
- p
Предикат, используемый для проверки элементов.
- returns
наибольший суффикс этой итерируемой коллекции, первый элемент которого не удовлетворяет предикату
p.
- Definition Classes
- IterableOps → IterableOnceOps
- Note
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только тот итератор, который был возвращен. Использование старого итератора неопределено, может измениться, и может привести к изменениям в новом итераторе также.
def empty: SortedSet[A]
Пустая итерируемая коллекция того же типа, что и эта итерируемая коллекция
- returns
пустая итерируемая коллекция типа
C.
- Definition Classes
- SortedSetFactoryDefaults → IterableOps
def ensuring(cond: (SortedSet[A]) => Boolean, msg: => Any): SortedSet[A]
- Implicit
- Этот член добавлен неявным преобразованием из SortedSet[A] вEnsuring[SortedSet[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (SortedSet[A]) => Boolean): SortedSet[A]
- Implicit
- Этот член добавлен неявным преобразованием из SortedSet[A] вEnsuring[SortedSet[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: => Any): SortedSet[A]
- Implicit
- Этот член добавлен неявным преобразованием из SortedSet[A] вEnsuring[SortedSet[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): SortedSet[A]
- Implicit
- Этот член добавлен неявным преобразованием из SortedSet[A] вEnsuring[SortedSet[A]] с помощью метода Ensuring в scala.Predef.
- Definition Classes
- Ensuring
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект получателя (this).
Метод eq реализует отношение эквивалентности для не-нулевых экземпляров AnyRef, и обладает тремя дополнительными свойствами:
-
Он согласован: для любых не-нулевых экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого не-нулевого экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true. При переопределении методов equals или hashCode, важно убедиться, что их поведение согласуется с равенством ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковое хэш-значение (o1.hashCode == o2.hashCode).
- возвращает
trueесли аргумент является ссылкой на объект получателя;falseв противном случае.
- Определяющие классы
- AnyRef
def equals(that: Any): Boolean
Универсальный метод равенства, определенный в AnyRef.
def exists(p: (A) => Boolean): Boolean
Проверяет, выполняется ли предикат хотя бы для одного элемента этой коллекции.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- возвращает
trueесли данный предикатpудовлетворяется хотя бы одним элементом этой коллекции, иначеfalse
- Определяющие классы
- IterableOnceOps
def filter(pred: (A) => Boolean): SortedSet[A]
Выбирает все элементы этой итерируемой коллекции, которые удовлетворяют предикату.
- возвращает
новый итератор, состоящий из всех элементов этой итерируемой коллекции, которые удовлетворяют данному предикату
p. Порядок элементов сохраняется.
- Определяющие классы
- IterableOps → IterableOnceOps
def filterNot(pred: (A) => Boolean): SortedSet[A]
Выбирает все элементы этой итерируемой коллекции, которые не удовлетворяют предикату.
- pred
предикат, используемый для проверки элементов.
- возвращает
новая итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, которые не удовлетворяют данному предикату
pred. Их порядок может не сохраняться.
- Определяющие классы
- IterableOps → IterableOnceOps
def finalize(): Unit
Вызывается сборщиком мусора для объекта получателя, когда на объект больше нет ссылок.
Подробности о том, когда и будет ли вызываться метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.
def find(p: (A) => Boolean): Option[A]
Находит первый элемент коллекции, удовлетворяющий предикату, если таковой существует.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- p
предикат, используемый для проверки элементов.
- возвращает
необязательное значение, содержащее первый элемент в коллекции, который удовлетворяет
p, илиNoneесли такового не существует.
- Определяющие классы
- IterableOnceOps
def firstKey: A
Возвращает первый ключ коллекции.
- Определяющие классы
- SortedSetOps → SortedOps
def flatMap[B](f: (A) => IterableOnce[B])(implicit ev: Ordering[B]): SortedSet[B]
Создает новую отсортированную коллекцию, применяя функцию ко всем элементам этого множества и используя элементы результирующих коллекций.
- B
тип элемента возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- возвращает
новое множество, полученное в результате применения данной функции со значениями в виде коллекций
fк каждому элементу этого множества и конкатенации результатов.
- Определяющие классы
- SortedSetOps
def flatMap[B](f: (A) => IterableOnce[B]): Set[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)
- B
тип элемента возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новая итерируемая коллекция, полученная в результате применения заданной функции со значениями в виде коллекции
fк каждому элементу этой итерируемой коллекции и конкатенации результатов.
- Определяющие классы
- IterableOps → IterableOnceOps
- Примечание
Повторное использование: после вызова этого метода следует отказаться от итератора, к которому он был применен, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def flatten[B](implicit asIterable: (A) => IterableOnce[B]): Set[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)
- B
тип элементов каждой итерируемой коллекции.
- asIterable
неявное преобразование, которое утверждает, что тип элемента этой итерируемой коллекции является
GenTraversable.- returns
новая итерируемая коллекция, полученная в результате конкатенации всех итерируемых коллекций элементов.
- Определяющие классы
- IterableOps → IterableOnceOps
- Примечание
Повторное использование: после вызова этого метода следует отказаться от итератора, к которому он был применен, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
Сворачивает элементы этой коллекции, используя указанный ассоциативный бинарный оператор. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективных порядков обхода.
Порядок, в котором выполняются операции над элементами, не указан и может быть недетерминированным.
Примечание: не будет завершаться для коллекций бесконечного размера.
- A1
параметр типа для бинарного оператора, супертип
A.- z
нейтральный элемент для операции сворачивания; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора сворачивания
opмежду всеми элементами иz, илиz, если эта коллекция пуста.
- Определяющие классы
- IterableOnceOps
def foldLeft[B](z: B)(op: (B, A) => B): B
Применяет бинарный оператор к начальному значению и всем элементам этой коллекции, слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции, слева направо, с начальным значениемzслева:op(...op(z, x_1), x_2, ..., x_n)
где
x1, ..., xn- элементы этой коллекции. Возвращаетz, если эта коллекция пуста.
- Определяющие классы
- IterableOnceOps
def foldRight[B](z: B)(op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции и начальному значению, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции, справа налево, с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn- элементы этой коллекции. Возвращаетz, если эта коллекция пуста.
- Определяющие классы
- IterableOnceOps
def forall(p: (A) => Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
trueесли этот набор пуст или заданный предикатpвыполняется для всех элементов этого набора, в противном случаеfalse.
- Definition Classes
- IterableOnceOps
def foreach[U](f: (A) => U): Unit
Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в выводе типов scalac.
- Definition Classes
- IterableOnceOps
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой format. Форматные строки аналогичны String.format (@см. java.lang.String.format).
- Implicit
- Этот член добавляется с помощью неявного преобразования из SortedSet[A] вStringFormat[SortedSet[A]] с помощью метода StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
def fromSpecific(coll: IterableOnce[A]): SortedSet[A]
Определяет, как преобразовать заданный Iterable[A] в набор типа C.
Этот процесс может быть выполнен строго или нестрого (т.е. без вычисления элементов результирующих наборов). Другими словами, этот метод определяет модель вычисления набора.
- Attributes
- protected
- Definition Classes
- SortedSetFactoryDefaults → IterableOps
- Note
-
При реализации пользовательского типа набора и уточнении
,Cдо нового типа, этот метод необходимо переопределить (в противном случае компилятор выдаст ошибку). В общем случае, гдеC =:= CC[A], это можно сделать, добавив в трейт IterableFactoryDefaults, который реализует метод с помощью iterableFactory.Как видно из аннотации
@uncheckedVariance, использование этого метода может быть небезопасным. Однако, до тех пор, пока оно вызывается соIterable[A]полученным отthisнабора (как это происходит в реализациях операций, где мы используемView[A]), это безопасно.
final def getClass(): Class[_ <: AnyRef]
Возвращает представление класса объекта в среде выполнения.
- returns
объект класса, соответствующий типу получателя во время выполнения.
def groupBy[K](f: (A) => K): immutable.Map[K, SortedSet[A]]
Разбивает этот итерируемый набор на карту итерируемых наборов в соответствии с функцией-дискриминатором.
Примечание: даже при применении к представлению или ленивому набору он всегда будет принуждать элементы.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- returns
-
Карта от ключей к итерируемым наборам, для которой выполняется следующее инвариантное свойство:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kсвязан с итерируемым набором тех элементовxдля которыхf(x)равноk.
- Definition Classes
- IterableOps
def groupMap[K, B](key: (A) => K)(f: (A) => B): immutable.Map[K, Set[B]]
Разбивает этот итерируемый набор на карту итерируемых наборов в соответствии с функцией-дискриминатором key. Каждый элемент в группе преобразуется в значение типа B с помощью функции value.
Эквивалентно groupBy(key).mapValues(_.map(f)), но более эффективно.
case class User(name: String, age: Int) def namesByAge(users: Seq[User]): Map[Int, Seq[String]] = users.groupMap(_.age)(_.name)
Примечание: даже при применении к представлению или ленивому набору он всегда будет принуждать элементы.
- K
тип ключей, возвращаемых функцией-дискриминатором
- B
тип значений, возвращаемых функцией преобразования
- key
функция-дискриминатор
- f
функция преобразования элементов
- Definition Classes
- IterableOps
def groupMapReduce[K, B](key: (A) => K)(f: (A) => B)(reduce: (B, B) => B): immutable.Map[K, B]
Разделяет эту итерационную коллекцию на карту в соответствии с функцией-дискриминатором key. Все значения, имеющие одинаковый дискриминатор, затем преобразуются с помощью функции value и затем сводятся к одному значению с помощью функции reduce.
Это эквивалентно groupBy(key).mapValues(_.map(f).reduce(reduce)), но более эффективно.
def occurrences[A](as: Seq[A]): Map[A, Int] = as.groupMapReduce(identity)(_ => 1)(_ + _)
Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно использовать элементы.
- Definition Classes
- IterableOps
def grouped(size: Int): Iterator[SortedSet[A]]
Разделяет элементы в итерационных коллекциях фиксированного размера.
- size
количество элементов в группе
- returns
Итератор, создающий итерационные коллекции размером
size, за исключением последней, которая будет меньше, чем размерsize, если элементы не делятся равномерно.
- Definition Classes
- IterableOps
- См. также
scala.collection.Iterator, метод
grouped
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- returns
значение хэш-кода для этого объекта.
def head: A
Выбирает первый элемент этой итерационной коллекции.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
первый элемент этой итерационной коллекции.
- Definition Classes
- IterableOps
- Исключения
NoSuchElementExceptionесли итерационная коллекция пуста.
def headOption: Option[A]
Необязательно выбирает первый элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
первый элемент этой итерационной коллекции, если она непуста,
Noneесли она пуста.
- Definition Classes
- IterableOps
def init: SortedSet[A]
Первая часть коллекции без последнего элемента.
Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно использовать элементы.
- Definition Classes
- IterableOps
def inits: Iterator[SortedSet[A]]
Перебирает начальные части этой итерационной коллекции. Первое значение будет этой итерационной коллекцией, а последнее — пустой итерационной коллекцией, а промежуточные значения — результаты последовательных применений init.
Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно использовать элементы.
- returns
итератор по всем начальным частям этой итерационной коллекции
- Definition Classes
- IterableOps
List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)
def intersect(that: Set[A]): SortedSet[A]
Вычисляет пересечение между этим множеством и другим множеством.
- that
множество для пересечения.
- returns
новое множество, состоящее из всех элементов, которые находятся как в этом множестве, так и в заданном множестве
that.
- Definition Classes
- SetOps
def isEmpty: Boolean
Проверяет, пуста ли коллекция.
Примечание: реализации в подклассах, которые не являются многократно просматриваемыми, должны позаботиться о том, чтобы не потреблять ни одного элемента при вызове isEmpty.
- returns
trueесли коллекция не содержит элементов,falseв противном случае.
- Definition Classes
- IterableOnceOps
final def isInstanceOf[T0]: Boolean
Проверьте, является ли динамический тип объекта-получателя T0.
Обратите внимание, что результат проверки зависит от семантики стирания типов Scala. Следовательно, выражение 1.isInstanceOf[String] вернёт false, в то время как выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, так как аргумент типа стирается при компиляции, невозможно проверить, являются ли элементы списка указанного типа.
- возвращает
true, если объект-получатель является экземпляром стирания типаT0;falseв противном случае.
- Классы определений
- Any
def isTraversableAgain: Boolean
Проверяет, можно ли многократно пройти по этому итерируемому набору коллекций. Всегда истинно для итерируемых наборов и ложно для итераторов, если не переопределено.
- возвращает
trueесли его можно многократно итерировать,falseв противном случае.
- Классы определений
- IterableOps → IterableOnceOps
def iterableFactory: IterableFactory[Set]
Компаньон-объект этого множества, предоставляющий различные методы фабрики.
- Классы определений
- Set → Iterable → IterableOps
- Примечание
При реализации пользовательского типа коллекции и уточнении
CCдо нового типа, этот метод необходимо переопределить, чтобы вернуть фабрику для нового типа (в противном случае компилятор выдаст ошибку).
def knownSize: Int
- возвращает
Количество элементов в этой коллекции, если его можно вычислить быстро, -1 в противном случае. Быстро обычно означает: Не требует перебора элементов коллекции.
- Классы определений
- IterableOnce
def last: A
Выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- возвращает
Последний элемент этой итерируемой коллекции.
- Классы определений
- IterableOps
- Исключения
NoSuchElementExceptionЕсли итерируемая коллекция пуста.
def lastKey: A
Возвращает последний ключ коллекции.
- Классы определений
- SortedSetOps → SortedOps
def lastOption: Option[A]
Возможно выбирает последний элемент.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- возвращает
последний элемент этой итерируемой коллекции, если она не пуста,
Noneесли она пуста.
- Классы определений
- IterableOps
def lazyZip[B](that: Iterable[B]): LazyZip2[A, B, SortedSet.this.type]
Аналогично zip, но элементы в каждой коллекции не потребляются до вызова строгой операции над возвращаемым LazyZip2 дескриптором.
Вызовы lazyZip могут быть объединены для поддержки более высоких арифметических значений (до 4) без расходов на создание и деструкцию промежуточных кортежей.
val xs = List(1, 2, 3) val res = (xs lazyZip xs lazyZip xs lazyZip xs).map((a, b, c, d) => a + b + c + d) // res == List(4, 8, 12)
- B
тип второго элемента в каждой потенциальной паре
- that
итерируемый набор, предоставляющий второй элемент каждой потенциальной пары
- возвращает
дескриптор
LazyZip2, который позволяет выполнять строгие операции над лениво вычисляемыми парами или объединёнными вызовамиlazyZip. Поддерживается также неявное преобразование вIterable[(A, B)].
- Классы определений
- Iterable
def map[B](f: (A) => B)(implicit ev: Ordering[B]): SortedSet[B]
Создаёт новую упорядоченную коллекцию, применяя функцию ко всем элементам этого множества.
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- возвращает
новое множество, полученное путём применения заданной функции
fк каждому элементу этого множества и сбора результатов.
- Классы определений
- SortedSetOps
def map[B](f: (A) => B): Set[B]
Создаёт новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.
- B
тип элементов возвращаемой итерируемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новая итерируемая коллекция, полученная путём применения заданной функции
fк каждому элементу этой итерируемой коллекции и сбора результатов.
- Definition Classes
- IterableOps → IterableOnceOps
- Note
Переиспользование: после вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только тот итератор, который был возвращен. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе также.
def max[B >: A](implicit ord: Ordering[B]): A
Находит наибольший элемент.
- B
Тип, над которым определено упорядочение.
- ord
Упорядочение, используемое для сравнения элементов.
- returns
наибольший элемент этого множества относительно упорядочения
ord.
- Definition Classes
- SortedSetOps → IterableOnceOps
- Exceptions thrown
UnsupportedOperationException, если это множество пусто.
def maxBefore(key: A): Option[A]
Найти наибольший элемент, меньший заданного ключа.
- key
Заданный ключ.
- returns
None, если такого узла нет.
- Definition Classes
- SortedSetOps
def maxBy[B](f: (A) => B)(implicit cmp: math.Ordering[B]): A
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Упорядочение, используемое для сравнения элементов.
- returns
первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно упорядочения
cmp.
- Definition Classes
- IterableOnceOps
- Exceptions thrown
UnsupportedOperationException, если эта коллекция пуста.
def maxByOption[B](f: (A) => B)(implicit cmp: math.Ordering[B]): Option[A]
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Упорядочение, используемое для сравнения элементов.
- returns
значения опции, содержащей первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно упорядочения
cmp.
- Definition Classes
- IterableOnceOps
def maxOption[B >: A](implicit ord: math.Ordering[B]): Option[A]
Находит наибольший элемент.
- B
Тип, над которым определено упорядочение.
- ord
Упорядочение, используемое для сравнения элементов.
- returns
значение опции, содержащей наибольший элемент этой коллекции относительно упорядочения
ord.
- Definition Classes
- IterableOnceOps
def min[B >: A](implicit ord: Ordering[B]): A
Находит наименьший элемент.
- B
Тип, над которым определено упорядочение.
- ord
Упорядочение, используемое для сравнения элементов.
- returns
наименьший элемент этого множества относительно упорядочения
ord.
- Definition Classes
- SortedSetOps → IterableOnceOps
- Exceptions thrown
UnsupportedOperationExceptionесли это множество пусто.
def minAfter(key: A): Option[A]
Найти наименьший элемент, больший или равный заданному ключу.
- key
Заданный ключ.
- returns
Noneесли такого узла нет.
- Definition Classes
- SortedSetOps
def minBy[B](f: (A) => B)(implicit cmp: math.Ordering[B]): A
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Порядок, используемый для сравнения элементов.
- returns
первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка
cmp.
- Definition Classes
- IterableOnceOps
- Exceptions thrown
UnsupportedOperationException, если этот набор пуст.
def minByOption[B](f: (A) => B)(implicit cmp: math.Ordering[B]): Option[A]
Находит первый элемент, который дает наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Порядок, используемый для сравнения элементов.
- returns
значение Option, содержащее первый элемент этого набора с наименьшим значением, измеренным функцией f относительно порядка
cmp.
- Definition Classes
- IterableOnceOps
def minOption[B >: A](implicit ord: math.Ordering[B]): Option[A]
Находит наименьший элемент.
- B
Тип, по которому определён порядок.
- ord
Порядок, используемый для сравнения элементов.
- returns
значение Option, содержащее наименьший элемент этого набора относительно порядка
ord.
- Definition Classes
- IterableOnceOps
final def mkString: String
Отображает все элементы этого набора в строке.
Делегирует addString, который можно переопределить.
- returns
строковое представление этого набора. В полученной строке строковые представления (с использованием метода
toString) всех элементов этого набора следуют друг за другом без разделительной строки.
- Definition Classes
- IterableOnceOps
- Annotations
- @inline()
final def mkString(sep: String): String
Отображает все элементы этого набора в строке с использованием разделительной строки.
Делегирует addString, который можно переопределить.
- sep
разделительная строка.
- returns
строковое представление этого набора. В результирующей строке строковые представления (с использованием метода
toString) всех элементов этого набора разделены строкойsep.
- Definition Classes
- IterableOnceOps
- Annotations
- @inline()
List(1, 2, 3).mkString("|") = "1|2|3"
final def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого набора в строке с использованием начальной, конечной и разделительной строк.
Делегирует addString, который можно переопределить.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковое представление этого набора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (с использованием методаtoString) всех элементов этого набора разделены строкойsep.
- Definition Classes
- IterableOnceOps
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- returns
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def newSpecificBuilder: Builder[A, SortedSet[A]]
- возвращает
строгий билдер для того же типа коллекции. Обратите внимание, что в случае ленивых коллекций (например, View или immutable.LazyList), реализация этого метода возможна, но полученный
Builderнарушит ленивость. Вследствие этого операции предпочтительно реализовывать с помощьюfromSpecificвместо этого метода.
- Атрибуты
- protected
- Классы определений
- SortedSetFactoryDefaults → IterableOps
- Примечание
-
При реализации пользовательского типа коллекции и уточнении
,Cдо нового типа, этот метод необходимо переопределить (иначе компилятор выдаст ошибку). В общем случае, когдаC =:= CC[A], это можно сделать, добавив в класс трейт IterableFactoryDefaults, который реализует метод с использованием iterableFactory.Как видно из аннотации
@uncheckedVariance, использование этого метода может быть небезопасным. Однако, пока возвращаемый билдер заполняется только значениямиA, взятыми из экземпляраthis, он безопасен.
def nonEmpty: Boolean
Проверяет, не пуста ли коллекция.
- возвращает
trueесли коллекция содержит по крайней мере один элемент,falseв противном случае.
- Классы определений
- IterableOnceOps
- Аннотации
- @deprecatedOverriding("nonEmpty определено как !isEmpty; переопределите isEmpty вместо этого", "2.13.0")
final def notify(): Unit
Разбуждает один поток, ожидающий монитора объекта-получателя.
- Классы определений
- AnyRef
- Аннотации
- @native()
- Примечание
не специфицировано SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все потоки, ожидающие монитора объекта-получателя.
- Классы определений
- AnyRef
- Аннотации
- @native()
- Примечание
не специфицировано SLS как член AnyRef
def partition(p: (A) => Boolean): (SortedSet[A], SortedSet[A])
Пара, во-первых, всех элементов, удовлетворяющих предикату p, и, во-вторых, всех элементов, которые не удовлетворяют. Интересно, потому что это разделяет коллекцию на две части.
Указанная здесь реализация по умолчанию требует два прохода по коллекции. Строгие коллекции имеют переопределённую версию partition в StrictOptimizedIterableOps, которая требует только одного прохода.
- Классы определений
- IterableOps
def partitionMap[A1, A2](f: (A) => Either[A1, A2]): (Set[A1], Set[A2])
Применяет функцию f к каждому элементу итерабельной коллекции и возвращает пару итерабельных коллекций: первая содержит значения, возвращённые f и обернутые в scala.util.Left, а вторая — значения, обернутые в scala.util.Right.
Пример:
val xs = Iterable(1, "one", 2, "two", 3, "three") partitionMap {
case i: Int => Left(i)
case s: String => Right(s)
}
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
- A1
тип элементов первой коллекции результатов
- A2
тип элементов второй коллекции результатов
- f
функция разделения, отображающая элементы этой итерабельной коллекции в scala.util.Either
- возвращает
пару итерабельных коллекций: первая содержит значения, возвращённые
fи обернутые в scala.util.Left, а вторая — значения, обернутые в scala.util.Right.
- Классы определений
- IterableOps
def product[B >: A](implicit num: math.Numeric[B]): B
Перемножает элементы этой коллекции.
- B
тип результата операции
*.- num
явный параметр, определяющий набор арифметических операций, включающий операцию
*, которая будет использована при вычислении произведения.- возвращает
произведение всех элементов этой коллекции относительно операции
*вnum.
- Классы определений
- IterableOnceOps
def range(from: A, until: A): SortedSet[A]
Создает проекцию диапазона этой коллекции с нижней и верхней границами.
- from
Нижняя граница (включительно) проекции диапазона.
- until
Верхняя граница (исключительно) проекции диапазона.
- Определяющие классы
- SortedOps
def rangeFrom(from: A): SortedSet[A]
Создает проекцию диапазона этой коллекции без верхней границы.
- from
Нижняя граница (включительно) проекции диапазона.
- Определяющие классы
- SortedOps
def rangeTo(to: A): SortedSet[A]
Создает проекцию диапазона этой коллекции без нижней границы.
- to
Верхняя граница (включительно) проекции диапазона.
- Определяющие классы
- SortedSetOps → SortedOps
def rangeUntil(until: A): SortedSet[A]
Создает проекцию диапазона этой коллекции без нижней границы.
- until
Верхняя граница (исключительно) проекции диапазона.
- Определяющие классы
- SortedOps
def reduce[B >: A](op: (B, B) => B): B
Применяет указанный ассоциативный бинарный оператор ко всем элементам этой коллекции.
Порядок, в котором операции выполняются над элементами, не определен и может быть недетерминированным.
- B
Типовой параметр для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- возвращает
Результат применения оператора reduce
opко всем элементам, если коллекция не пуста.
- Определяющие классы
- IterableOnceOps
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def reduceLeft[B >: A](op: (B, A) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- op
бинарный оператор.
- возвращает
-
результат вставки
opмежду последовательными элементами этой коллекции слева направо:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)где
x1, ..., xn— это элементы этой коллекции.
- Определяющие классы
- IterableOnceOps
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этой коллекции слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- op
бинарный оператор.
- возвращает
необязательное значение, содержащее результат
reduceLeft(op), если эта коллекция не пуста,Noneв противном случае.
- Определяющие классы
- IterableOnceOps
def reduceOption[B >: A](op: (B, B) => B): Option[B]
Применяет указанный ассоциативный бинарный оператор ко всем элементам этой коллекции, если таковые имеются.
Порядок, в котором операции выполняются над элементами, не определен и может быть недетерминированным.
- B
Типовой параметр для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- возвращает
Необязательное значение, содержащее результат применения оператора reduce
opко всем элементам, если коллекция не пуста, иNoneв противном случае.
- Определяющие классы
- IterableOnceOps
def reduceRight[B >: A](op: (A, B) => B): B
Применяет бинарный оператор ко всем элементам этой коллекции, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой коллекции, справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xn— элементы этой коллекции.
- Определяющие классы
- IterableOnceOps
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
Применяет бинарный оператор ко всем элементам этой коллекции, справа налево, необязательно.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceRight(op)если эта коллекция не пуста,Noneв противном случае.
- Определяющие классы
- IterableOnceOps
def reversed: Iterable[A]
- Атрибуты
- protected
- Определяющие классы
- IterableOnceOps
def scan[B >: A](z: B)(op: (B, B) => B): Set[B]
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент z может применяться более одного раза.
- B
тип элементов результирующей коллекции
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- returns
новая итерируемая коллекция, содержащая префиксное сканирование элементов в этой итерируемой коллекции
- Определяющие классы
- IterableOps
def scanLeft[B](z: B)(op: (B, A) => B): Set[B]
Создает итерируемую коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- returns
коллекция с промежуточными результатами
- Определяющие классы
- IterableOps → IterableOnceOps
- Примечание
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может измениться и может привести к изменениям нового итератора.
def scanRight[B](z: B)(op: (A, B) => B): Set[B]
Создает коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
Примечание: даже при применении к представлению или ленивой коллекции он всегда будет принудительно применять элементы.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
тип элементов в результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- returns
коллекция с промежуточными результатами
- Определяющие классы
- IterableOps
def size: Int
Размер этой коллекции.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
количество элементов в этой коллекции.
- Определяющие классы
- IterableOnceOps
def sizeCompare(that: Iterable[_]): Int
Сравнивает размер этого итерируемого набора с размером другого Iterable.
- that
Iterableразмер которого сравнивается с размером этого итерируемого набора.- returns
-
Значение
x, гдеx < 0 if this.size < that.size x == 0 if this.size == that.size x > 0 if this.size > that.size
Реализация метода здесь не вызывает
sizeнапрямую; его время выполнения составляетO(this.size min that.size)вместоO(this.size + that.size). Метод следует переопределить, если вычислениеsizeявляется быстрым иknownSizeвозвращает-1.
- Definition Classes
- IterableOps
def sizeCompare(otherSize: Int): Int
Сравнивает размер этого итерируемого набора со значением-тестом.
- otherSize
значение-тест, которое сравнивается с размером.
- returns
-
Значение
x, гдеx < 0 if this.size < otherSize x == 0 if this.size == otherSize x > 0 if this.size > otherSize
Реализация метода здесь не вызывает
sizeнапрямую; его время выполнения составляетO(size min otherSize)вместоO(size). Метод следует переопределить, если вычислениеsizeявляется быстрым иknownSizeвозвращает-1.
- Definition Classes
- IterableOps
- See also
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
- Definition Classes
- IterableOps
- Annotations
- @inline()
def slice(from: Int, until: Int): SortedSet[A]
Выбирает интервал элементов. Полученный итерируемый набор состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: могут возвращать разные результаты для разных запусков, если только тип базового набора не является упорядоченным.
- from
наименьший индекс для включения из этого итерируемого набора.
- until
наименьший индекс для ИСКЛЮЧЕНИЯ из этого итерируемого набора.
- returns
итерируемый набор, содержащий элементы, большие или равные индексу
from, распространяющийся до (но не включая) индексuntilэтого итерируемого набора.
- Definition Classes
- IterableOps → IterableOnceOps
- Note
Повторное использование: После вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только итератор, который был возвращён. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе также.
def sliding(size: Int, step: Int): Iterator[SortedSet[A]]
Группирует элементы в блоки фиксированного размера, перемещая "скользящее окно" по ним (в отличие от разбиения их, как это делается в grouped.)
- size
количество элементов в группе
- step
расстояние между первыми элементами последовательных групп
- returns
Итератор, генерирующий итерируемые наборы размера
size, за исключением последнего элемента (который может быть единственным элементом), который будет усечён, если оставшихся элементов меньше, чемsize.
- Definition Classes
- IterableOps
- See also
scala.collection.Iterator, метод
sliding
def sliding(size: Int): Iterator[SortedSet[A]]
Группирует элементы в блоки фиксированного размера, перемещая "скользящее окно" по ним (в отличие от разбиения их, как это делается в grouped.) Шаг "скользящего окна" установлен в один.
- size
количество элементов в группе
- returns
Итератор, генерирующий итерируемые наборы размера
size, за исключением последнего элемента (который может быть единственным элементом), который будет усечён, если оставшихся элементов меньше, чемsize.
- Definition Classes
- IterableOps
- See also
scala.collection.Iterator, метод
sliding
def sortedIterableFactory: SortedIterableFactory[SortedSet]
Объект-компаньон этого упорядоченного набора, предоставляющий различные фабричные методы.
- Definition Classes
- SortedSet → SortedSetOps
- Note
При реализации пользовательского типа коллекции и уточнении
CCдо нового типа, этот метод необходимо переопределить, чтобы вернуть фабрику для нового типа (иначе компилятор выдаст ошибку).
def span(p: (A) => Boolean): (SortedSet[A], SortedSet[A])
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- p
предикат проверки
- returns
пара, состоящая из самого длинного префикса этой итерируемой коллекции, элементы которого удовлетворяют
p, и остальной части этой итерируемой коллекции.
- Definition Classes
- IterableOps → IterableOnceOps
- Примечание
Повторное использование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах.
def splitAt(n: Int): (SortedSet[A], SortedSet[A])
Разделяет эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
позиция разделения.
- returns
пара итерируемых коллекций, состоящая из первых
nэлементов этой итерируемой коллекции и других элементов.
- Definition Classes
- IterableOps → IterableOnceOps
- Примечание
Повторное использование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах.
def stepper[S <: Stepper[_]](implicit shape: StepperShape[A, S]): S
Возвращает Stepper для элементов этой коллекции.
Stepper позволяет создавать Java поток для обработки коллекции, см. scala.jdk.StreamConverters. Для коллекций, содержащих примитивные значения, Stepper может использоваться как итератор, который не упаковывает элементы.
Неявный параметр StepperShape определяет тип результирующего Stepper в соответствии с типом элемента этой коллекции.
-
Для коллекций
Int, Short, Byte или Char, возвращается IntStepper.Для коллекций Double или Float, возвращается DoubleStepper.Для коллекций Long, возвращается LongStepper.В любом другом случае, возвращается AnyStepper.Обратите внимание, что этот метод переопределяется в подклассах, и возвращаемый тип уточняется до S with EfficientSplit, например, IndexedSeqOps.stepper. Для Steppers, помеченных scala.collection.Stepper.EfficientSplit, конвертеры в scala.jdk.StreamConverters позволяют создавать параллельные потоки, в то время как обычные Steppers можно преобразовать только в последовательные потоки.
- Definition Classes
- IterableOnce
def stringPrefix: String
- Attributes
- protected[this]
- Definition Classes
- SortedSet → Set → Iterable
- Annotations
- @deprecatedOverriding("Compatibility override", "2.13.0")
def subsetOf(that: Set[A]): Boolean
Проверяет, является ли это множество подмножеством другого множества.
- that
множество для проверки.
- returns
true, если это множество является подмножествомthat, т.е. если каждый элемент этого множества также является элементомthat.
- Definition Classes
- SetOps
def subsets(): Iterator[SortedSet[A]]
def subsets(len: Int): Iterator[SortedSet[A]]
Итератор по всем подмножествам этого множества заданного размера. Если запрашиваемый размер невозможен, возвращается пустой итератор.
- len
размер подмножеств.
- returns
итератор.
- Definition Classes
- SetOps
def sum[B >: A](implicit num: math.Numeric[B]): B
Подсчитывает элементы этого набора.
- B
тип результата оператора
+.- num
явный параметр, определяющий набор числовых операций, который включает оператор
+, используемый при формировании суммы.- returns
сумма всех элементов этого набора по отношению к оператору
+вnum.
- Definition Classes
- IterableOnceOps
final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
def tail: SortedSet[A]
Остальная часть коллекции без первого элемента.
- Definition Classes
- IterableOps
def tails: Iterator[SortedSet[A]]
Итерируется по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результаты последовательного применения tail.
- returns
итератор по всем хвостам этой итерируемой коллекции
- Definition Classes
- IterableOps
List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)
def take(n: Int): SortedSet[A]
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
количество элементов для взятия из этой итерируемой коллекции.
- returns
итерируемая коллекция, содержащая только первые
nэлементов этой итерируемой коллекции, или же вся итерируемая коллекция, если в ней меньшеnэлементов. Еслиnотрицательно, возвращает пустую итерируемую коллекцию.
- Definition Classes
- IterableOps → IterableOnceOps
- Примечание
Повторное использование: После вызова этого метода необходимо отказаться от итератора, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе.
def takeRight(n: Int): SortedSet[A]
Выбирает последние n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
количество элементов для взятия из этой итерируемой коллекции.
- returns
итерируемая коллекция, содержащая только последние
nэлементов этой итерируемой коллекции, или же вся итерируемая коллекция, если в ней меньшеnэлементов. Еслиnотрицательно, возвращает пустую итерируемую коллекцию.
- Definition Classes
- IterableOps
def takeWhile(p: (A) => Boolean): SortedSet[A]
Берёт наибольший префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- p
Предикат, используемый для проверки элементов.
- returns
наибольший префикс этой итерируемой коллекции, элементы которого удовлетворяют предикату
p.
- Definition Classes
- IterableOps → IterableOnceOps
def tapEach[U](f: (A) => U): SortedSet[A]
Применяет функцию побочного эффекта к каждому элементу в этой коллекции. Строгие коллекции будут применять f к своим элементам немедленно, в то время как ленивые коллекции, такие как представления и LazyLists, будут применять f к каждому элементу только тогда, когда этот элемент оценивается, и каждый раз, когда этот элемент оценивается.
- U
тип возвращаемого значения f
- f
функция, применяемая к каждому элементу этой итерируемой коллекции
- returns
Такая же логическая коллекция, как и эта
- Definition Classes
- IterableOps → IterableOnceOps
def to[C1](factory: Factory[A, C1]): C1
Учитывая фабрику коллекций factory, преобразует эту коллекцию в соответствующее представление для текущего типа элементов A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
- Definition Classes
- IterableOnceOps
def toArray[B >: A](implicit arg0: ClassTag[B]): Array[B]
Преобразовать коллекцию в массив.
- Определяющие классы
- IterableOnceOps
final def toBuffer[B >: A]: Buffer[B]
- Определяющие классы
- IterableOnceOps
- Аннотации
- @inline()
def toIndexedSeq: immutable.IndexedSeq[A]
- Определяющие классы
- IterableOnceOps
final def toIterable: SortedSet.this.type
- возвращает
Эту коллекцию в виде
Iterable[A]. Новый объект не будет создан, еслиthisуже являетсяIterable[A].
- Определяющие классы
- Iterable → IterableOps
def toList: immutable.List[A]
- Определяющие классы
- IterableOnceOps
def toMap[K, V](implicit ev: <:<[A, (K, V)]): immutable.Map[K, V]
- Определяющие классы
- IterableOnceOps
def toSeq: immutable.Seq[A]
- возвращает
Эту коллекцию в виде
Seq[A]. Это эквивалентноto(Seq), но может быть быстрее.
- Определяющие классы
- IterableOnceOps
def toSet[B >: A]: immutable.Set[B]
- Определяющие классы
- IterableOnceOps
def toString(): String
Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, «@» и хэш-кода объекта в шестнадцатеричном формате.
- возвращает
строковое представление объекта.
def toVector: immutable.Vector[A]
- Определяющие классы
- IterableOnceOps
def transpose[B](implicit asIterable: (A) => Iterable[B]): Set[Set[B]]
Транспонирует эту итерируемую коллекцию итерируемых коллекций в итерируемую коллекцию итерируемых коллекций.
Тип результирующей коллекции будет определяться статическим типом итерируемой коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут принудительно вычислены.
- B
тип элементов каждой итерируемой коллекции.
- asIterable
явное преобразование, которое утверждает, что тип элемента этой итерируемой коллекции является
Iterable.- возвращает
двумерная итерируемая коллекция итерируемых коллекций, в которой n-я строка является n-м столбцом этой итерируемой коллекции.
- Определяющие классы
- IterableOps
- Исключения
IllegalArgumentExceptionесли все коллекции в этой итерируемой коллекции не имеют одинаковый размер.
final def union(that: Set[A]): SortedSet[A]
def unsorted: Set[A]
- Definition Classes
- SortedSet → SortedSetOps
def unzip[A1, A2](implicit asPair: (A) => (A1, A2)): (Set[A1], Set[A2])
Преобразует это итерируемое множество пар в два множества первой и второй половины каждой пары.
val xs = Iterable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three))
- A1
тип первой половины элементов пар
- A2
тип второй половины элементов пар
- asPair
явное преобразование, которое утверждает, что тип элементов этого итерируемого множества является парой.
- returns
пара итерируемых множеств, содержащих первую, соответственно вторую половину каждой пары элементов этого итерируемого множества.
- Definition Classes
- IterableOps
def unzip3[A1, A2, A3](implicit asTriple: (A) => (A1, A2, A3)): (Set[A1], Set[A2], Set[A3])
Преобразует это итерируемое множество троек в три множества первого, второго и третьего элемента каждой тройки.
val xs = Iterable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Iterable(1, 2, 3),
// Iterable(one, two, three),
// Iterable(1, 2, 3))
- A1
тип первого члена троек элементов
- A2
тип второго члена троек элементов
- A3
тип третьего члена троек элементов
- asTriple
явное преобразование, которое утверждает, что тип элементов этого итерируемого множества является тройкой.
- returns
тройку итерируемых множеств, содержащих первый, второй, соответственно третий член каждой тройки элементов этого итерируемого множества.
- Definition Classes
- IterableOps
def view: View[A]
Просмотр элементов этого набора.
- Definition Classes
- IterableOps
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long): Unit
def withFilter(p: (A) => Boolean): SortedSetOps.WithFilter[A, Set, SortedSet]
Создаёт нестрогое фильтрацию этого множества.
Примечание: различие между c filter p и c withFilter p заключается в том, что первый создаёт новое множество, а второй только ограничивает область последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты для разных запусков, если только тип основного множества не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
объект класса
WithFilter, который поддерживаетmap,flatMap,foreach, иwithFilterоперации. Все эти операции применяются к элементам этого множества, удовлетворяющим предикатуp.
- Definition Classes
- SortedSetFactoryDefaults → IterableOps
def zip[B](that: IterableOnce[B])(implicit ev: Ordering[(A, B)]): SortedSet[(A, B)]
Возвращает множество, образованное из этого множества и другого итерируемого набора, объединяя соответствующие элементы попарно. Если один из двух наборов длиннее другого, его оставшиеся элементы игнорируются.
- B
тип второй половины возвращаемых пар
- that
Итерируемый набор, предоставляющий вторую половину каждой пары результата
- returns
новое множество, содержащее пары, состоящие из соответствующих элементов этого множества и
that. Длина возвращаемого набора равна минимуму длин этого множества иthat.
- Definition Classes
- SortedSetOps
def zip[B](that: IterableOnce[B]): Set[(A, B)]
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора, объединяя соответствующие элементы попарно. Если один из двух наборов длиннее другого, его оставшиеся элементы игнорируются.
- B
тип второй половины возвращаемых пар
- that
Итерируемый набор, предоставляющий вторую половину каждой пары результата
- returns
новый итерируемый набор, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора и
that. Длина возвращаемого набора равна минимуму длин этого итерируемого набора иthat.
- Definition Classes
- IterableOps
def zipAll[A1 >: A, B](that: Iterable[B], thisElem: A1, thatElem: B): Set[(A1, B)]
Возвращает итерируемый набор, образованный из этого итерируемого набора и другого итерируемого набора, объединяя соответствующие элементы попарно. Если один из двух наборов короче другого, для расширения более короткого набора до длины более длинного используются заполнители.
- that
итерируемый набор, предоставляющий вторую половину каждой пары результата
- thisElem
элемент, используемый для заполнения результата, если этот итерируемый набор короче
that.- thatElem
элемент, используемый для заполнения результата, если
thatкороче этого итерируемого набора.- returns
новый набор типа
That, содержащий пары, состоящие из соответствующих элементов этого итерируемого набора иthat. Длина возвращаемого набора равна максимуму длин этого итерируемого набора иthat.Если этот итерируемый набор короче
that, значенияthisElemиспользуются для заполнения результата. Еслиthatкороче этого итерируемого набора, значенияthatElemиспользуются для заполнения результата.
- Definition Classes
- IterableOps
def zipWithIndex: Set[(A, Int)]
Сцепляет этот итерируемый набор с его индексами.
- returns
Новый итерируемый набор, содержащий пары, состоящие из всех элементов этого итерируемого набора, связанных с их индексом. Индексы начинаются с
0.
- Definition Classes
- IterableOps → IterableOnceOps
- Note
Переиспользование: после вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе также.
List("a", "b", "c").zipWithIndex == List(("a", 0), ("b", 1), ("c", 2))
final def |(that: Set[A]): SortedSet[A]
Члены неявных значений, скрытые в тени
def +(other: String): String
- Неявный
- Этот член добавлен с помощью неявного преобразования из SortedSet[A] в any2stringadd[SortedSet[A]], выполненного методом any2stringadd в scala.Predef.
- Скрытие
- Этот неявный унаследованный член скрыт одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, можно использовать приведение типа:(sortedSet: any2stringadd[SortedSet[A]]).+(other)
- Definition Classes
- any2stringadd
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/collection/SortedSet.html
Базовый тип упорядоченных множеств