Тракт scala.collection.mutable.Set
Компаньон объект Set
тракт Set[A] extends Iterable[A] with collection.Set[A] with GenericSetTemplate[A, Set] with SetLike[A, Set[A]]
Типовые члены
класс WithFilter extends FilterMonadic[A, Repr]
Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.
- Определяющие классы
- TraversableLike
тип Self = Set[A]
Тип, реализующий данное итерируемое множество
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableLike
Абстрактные значения членов
абстрактный def +=(elem: A): Set.this.type
Добавляет одиночный элемент в множество.
- elem
элемент, который нужно добавить.
- возвращает
сам билдер.
абстрактный def -=((elem: A): Set.this.type
Удаляет одиночный элемент из изменяемого множества.
- elem
элемент, который нужно удалить.
- возвращает
само изменяемое множество
- Определяющие классы
- SetLike → Shrinkable
абстрактный def contains(elem: A): Boolean
Проверяет, содержит ли это множество указанный элемент.
- elem
элемент, для проверки принадлежности.
- возвращает
trueеслиelemсодержится в множестве,falseв противном случае.
- Определяющие классы
- SetLike → GenSetLike
абстрактный def iterator: Iterator[A]
- Определяющие классы
- GenSetLike → GenIterableLike
Члены-значения конкретного типа
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
def &(that: GenSet[A]): Set[A]
Вычисляет пересечение этого множества с другим множеством.
Примечание: То же самое, что и intersect.
- that
множество для пересечения.
- returns
новое множество, состоящее из всех элементов, которые есть как в этом множестве, так и в заданном множестве
that.
- Definition Classes
- GenSetLike
def &~(that: GenSet[A]): Set[A]
Разность этого множества и другого множества.
Примечание: То же самое, что и diff.
- that
множество элементов, которые нужно исключить.
- returns
множество, содержащее те элементы этого множества, которые не содержатся также в заданном множестве
that.
- Definition Classes
- GenSetLike
def +(elem1: A, elem2: A, elems: A*): Set[A]
Создаёт новое множество, состоящее из всех элементов этого множества и двух или более указанных элементов.
Дубликаты (элементы, для которых equals возвращает true) будут удалены, но не определено, будет ли элемент этого множества или новый добавленный.
- elem1
первый элемент для добавления.
- elem2
второй элемент для добавления.
- elems
остальные элементы для добавления.
- returns
новое множество, состоящее из всех элементов этого множества,
elem1,elem2и тех, что вelems.
def +(elem: A): Set[A]
Создаёт новое множество, состоящее из всех элементов этого множества и elem.
Дубликаты (элементы, для которых equals возвращает true) будут удалены, но не определено, будет ли элемент этого множества или новый добавленный.
- elem
элемент для добавления.
- returns
новое множество, состоящее из элементов этого множества и
elem.
- Definition Classes
- SetLike → SetLike → GenSetLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
+создаёт новое множество. Используйте+=для добавления элемента в это множество и возвращения самого множества.
def ++(xs: GenTraversableOnce[A]): Set[A]
Создаёт новое множество, состоящее из всех элементов этого множества и элементов, предоставленных указанным объектом итерации.
Дубликаты (элементы, для которых equals возвращает true) будут удалены, но не определено, будет ли элемент этого множества или новый добавленный.
- xs
объект итерации.
- returns
новое множество, состоящее из элементов этого множества и элементов в
xs.
def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Set[A], B, That]): That
Возвращает новую итерируемую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов итерируемой коллекции — это самый общий суперкласс, охватывающий типы элементов двух операндов.
- B
тип элементов возвращаемой коллекции.
- That
класс возвращаемой коллекции. Где это возможно,
That— тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, допустим ли тип элементаBдля данного класса, что означает, что найдено неявное значение типаCanBuildFrom[Repr, B, That].- that
итерируемый объект для добавления.
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
новая коллекция типа
That, которая содержит все элементы этой итерируемой коллекции, за которыми следуют все элементыthat.
- Definition Classes
- TraversableLike → GenTraversableLike
def ++:[B >: A, That](that: collection.Traversable[B])(implicit bf: CanBuildFrom[Set[A], B, That]): That
Как и ++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.
Она отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоническое правило: двоеточие стоит со стороны типа новой коллекции.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
Эта перегрузка существует, потому что: для реализации ++: следует использовать реализацию ++, поскольку многие коллекции переопределяют её более эффективными версиями.
Так как у TraversableOnce нет метода ++, мы должны реализовать его напрямую, но Traversable и ниже могут использовать перегрузку.
- B
тип элементов возвращаемой коллекции.
- That
класс возвращаемой коллекции. Где это возможно,
That— тот же класс, что и текущий класс коллекцииRepr, но это зависит от того, допустим ли тип элементаBдля данного класса, что означает, что найдено неявное значение типаCanBuildFrom[Repr, B, That].- that
итерируемый объект для добавления.
- bf
неявное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
новая коллекция типа
That, которая содержит все элементы этой итерируемой коллекции, за которыми следуют все элементыthat.
- Definition Classes
- TraversableLike
def ++:[B](that: TraversableOnce[B]): Set[B]
Как и ++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.
Она отличается от ++ тем, что правый операнд определяет тип результирующей коллекции, а не левый. Мемоническое правило: двоеточие стоит со стороны типа новой коллекции.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
- B
тип элементов возвращаемой коллекции.
- that
итерируемый объект для добавления.
- returns
новая изменяемая коллекция, которая содержит все элементы этой изменяемой коллекции, за которыми следуют все элементы
that.
- Definition Classes
- TraversableLike
def ++=(xs: TraversableOnce[A]): Set.this.type
Добавляет все элементы, сгенерированные итерируемым объектом, в эту коллекцию.
- xs
итерируемый объект, генерирующий добавляемые элементы.
- returns
сама изменяемая коллекция.
- Definition Classes
- Growable
def +=(elem1: A, elem2: A, elems: A*): Set.this.type
Добавляет два или более элементов в эту изменяемую коллекцию.
- elem1
Первый добавляемый элемент.
- elem2
Второй добавляемый элемент.
- elems
Остальные добавляемые элементы.
- returns
сама изменяемая коллекция
- Definition Classes
- Growable
def -(elem1: A, elem2: A, elems: A*): Set[A]
Создает новую коллекцию, содержащую все элементы этого множества, кроме указанных двух или более элементов.
- elem1
Первый удаляемый элемент.
- elem2
Второй удаляемый элемент.
- elems
Остальные удаляемые элементы.
- returns
новая коллекция, содержащая все элементы этого множества, кроме
elem1,elem2иelems.
- Definition Classes
- SetLike → Subtractable
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
-создает новую коллекцию. Используйте-=для удаления элемента из этого множества и возвращения самого множества.
def -(elem: A): Set[A]
Создаёт новый набор, состоящий из всех элементов этого набора, за исключением elem.
- elem
элемент для удаления.
- returns
новый набор, состоящий из всех элементов этого набора, за исключением
elem.
- Definition Classes
- SetLike → SetLike → Subtractable → GenSetLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
-создаёт новый набор. Используйте-=для удаления элемента из этого набора и возвращения самого набора.
def --(xs: GenTraversableOnce[A]): Set[A]
Создаёт новый набор, состоящий из всех элементов этого набора, кроме тех, которые предоставлены указанным объектом итерируемых данных.
- xs
объект итерируемых данных.
- returns
новый набор, состоящий из всех элементов этого набора, кроме элементов из
xs.
- Definition Classes
- SetLike → Subtractable
- Annotations
- @migration
- Migration
(Изменено в версии 2.8.0)
--создаёт новый набор. Используйте--=для удаления элементов из этого набора и возвращения самого набора.
def --=(xs: TraversableOnce[A]): Set.this.type
Удаляет все элементы, производимые итератором, из этого уменьшаемого набора.
- xs
итератор, производящий элементы для удаления.
- returns
сам уменьшаемый набор.
- Definition Classes
- Shrinkable
def -=(elem1: A, elem2: A, elems: A*): Set.this.type
Удаляет два или более элементов из этого уменьшаемого набора.
- elem1
первый элемент для удаления.
- elem2
второй элемент для удаления.
- elems
остальные элементы для удаления.
- returns
сам уменьшаемый набор.
- Definition Classes
- Shrinkable
def ->[B](y: B): (Set[A], B)
- Implicit
- Этот член добавлен неявным преобразованием из Set[A] в ArrowAssoc[Set[A]], выполненное методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
def /:[B](z: B)(op: (B, A) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого итерируемого объекта или итератора, слева направо.
Примечание: /: — это альтернативная запись для foldLeft; z /: xs эквивалентно xs foldLeft z.
Примеры:
Обратите внимание, что функция свёртки, используемая для вычисления b, эквивалентна функции свёртки, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_) b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y) c: Int = 15
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора, слева направо, с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn— элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def :\[B](z: B)(op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора и начальному значению, справа налево.
Примечание: :\ — это альтернативная запись для foldRight; xs :\ z эквивалентно xs foldRight z.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции упорядочен или оператор ассоциативен и коммутативен.
Примеры:
Обратите внимание, что функция свёртки, используемая для вычисления b, эквивалентна функции свёртки, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_) b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y) c: Int = 15
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора, справа налево, с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— элементы этого итерируемого объекта или итератора.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Классы определений
- AnyRef → Any
def add(elem: A): Boolean
Добавляет элемент в это изменяемое множество.
- elem
элемент, который нужно добавить
- возвращает
trueесли элемент еще не присутствовал в множестве,falseв противном случае.
- Классы определений
- SetLike
def addString(b: scala.StringBuilder): scala.StringBuilder
Добавляет все элементы этого итерируемого объекта или итератора в строковый буфер. Записываемый текст состоит из строковых представлений (относительно метода toString) всех элементов этого итерируемого объекта или итератора без какой-либо разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
- b
строковый буфер, в который добавляются элементы.
- возвращает
строковый буфер
b, в который были добавлены элементы.
- Классы определений
- TraversableOnce
def addString(b: scala.StringBuilder, sep: String): scala.StringBuilder
Добавляет все элементы этого итерируемого объекта или итератора в строковый буфер с использованием разделительной строки. Записываемый текст состоит из строковых представлений (относительно метода toString) всех элементов этого итерируемого объекта или итератора, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
- b
строковый буфер, в который добавляются элементы.
- sep
разделительная строка.
- возвращает
строковый буфер
b, в который были добавлены элементы.
- Классы определений
- TraversableOnce
def addString(b: scala.StringBuilder, start: String, sep: String, end: String): scala.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
конечная строка.
- возвращает
строковый буфер
b, в который были добавлены элементы.
- Классы определений
- TraversableOnce
def aggregate[B](z: ⇒ B)(seqop: (B, A) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общий вид fold и reduce. Он похож на foldLeft, поскольку не требует, чтобы результат был супертипом типа элемента. Кроме того, он позволяет обрабатывать параллельные коллекции частями, а затем объединять промежуточные результаты.
aggregate разбивает итерируемый объект или итератор на части и обрабатывает каждую часть последовательным применением seqop, начиная с z (как foldLeft). Эти промежуточные результаты затем объединяются с помощью combop (как fold). Реализация этой операции может работать с произвольным количеством частей коллекции (даже с 1), поэтому combop может вызываться произвольное количество раз (даже 0).
Например, рассмотрим суммирование целочисленных значений списка символов. Начальное значение суммы равно 0. Сначала seqop преобразует каждый входной символ в целое число и добавляет его к сумме (раздела). Затем combop просто суммирует промежуточные результаты разделов:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип накапливаемых результатов
- z
начальное значение накапливаемого результата раздела — это обычно нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования) и может оцениваться более одного раза- seqop
оператор, используемый для накопления результатов в пределах раздела
- combop
ассоциативный оператор, используемый для объединения результатов из разных разделов
- Классы определений
- TraversableOnce → GenTraversableOnce
def andThen[A](g: (Boolean) ⇒ A): (A) ⇒ A
Компонует два экземпляра Function1 в новый Function1, с применением этого функции первой.
- A
тип результата функции
g- g
функция R => A
- возвращает
новая функция
fтакая, чтоf(x) == g(apply(x))
- Классы определений
- Function1
- Аннотации
- @unspecialized()
def apply(elem: A): Boolean
Проверяет, содержится ли некоторый элемент в этом множестве.
Этот метод эквивалентен contains. Он позволяет интерпретировать множества как предикаты.
- elem
элемент, который нужно проверить на принадлежность множеству.
- returns
trueеслиelemсодержится в этом множестве,falseв противном случае.
- Definition Classes
- GenSetLike → Function1
final def asInstanceOf[T0]: T0
Преобразовать объект-приемник к типу T0.
Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] этого не сделает. В последнем примере, поскольку аргумент типа стирается во время компиляции, нельзя проверить, соответствуют ли содержимое списка нужному типу.
- returns
объект-приемник.
- Definition Classes
- Any
- Exceptions thrown
ClassCastException, если объект-приемник не является экземпляром стирания типаT0.
def canEqual(that: Any): Boolean
Метод, вызываемый из методов равенства, чтобы дочерние классы с пользовательским определением могли отказать в равенстве другим коллекциям того же типа.
- that
Объект, с которым эта итерируемая коллекция должна быть сравнена
- returns
true, если эта итерируемая коллекция может быть равнойthat,falseв противном случае. Тест учитывает только типы объектов во время выполнения, но игнорирует их элементы.
- Definition Classes
- IterableLike → Equals
def clear(): Unit
Удаляет все элементы из множества. После завершения этой операции множество будет пустым.
def clone(): Set[A]
Создает копию объекта-приемника.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия объекта-приемника.
def collect[B](pf: PartialFunction[A, B]): Set[B]
Строит новую коллекцию, применяя частичную функцию ко всем элементам этого изменяемого множества, для которых функция определена.
- B
тип элемента возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и отображает изменяемое множество.
- returns
новое изменяемое множество, полученное в результате применения данной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент итерируемого объекта или итератора, для которого заданная частичная функция определена, и применяет к нему частичную функцию.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- pf
частичная функция
- returns
значение типа Option, содержащее результат применения pf к первому значению, для которого она определена, или
Noneесли такового не существует.
- Definition Classes
- TraversableOnce
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def companion: GenericCompanion[Set]
Компаньон-объект фабрики, создающий экземпляры класса mutable.Set. (или его Iterable суперкласса, где класс mutable.Set не является Seq.)
- Definition Classes
- Set → Set → GenSet → Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → GenericTraversableTemplate
def compose[A](g: (A) ⇒ A): (A) ⇒ Boolean
Создаёт новую функцию Function1, объединяя две функции Function1, при этом последней применяется эта функция.
- A
тип, к которому может быть применена функция
g- g
функция A => T1
- возвращает
новую функцию
f, такая чтоf(x) == apply(g(x))
- Definition Classes
- Function1
- Annotations
- @unspecialized()
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этого изменяемого множества в массив. Заполняет заданный массив xs не более чем len элементами этого изменяемого множества, начиная с позиции start. Копирование прекратится, как только будет достигнут конец текущего изменяемого множества, или конец целевого массива, или len элементов будут скопированы.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное количество элементов для копирования.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A]): Unit
Копирует элементы этого изменяемого множества в массив. Заполняет заданный массив xs значениями этого изменяемого множества. Копирование прекратится, как только будет достигнут конец текущего изменяемого множества или конец целевого массива.
- xs
массив для заполнения.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этого изменяемого множества в массив. Заполняет заданный массив xs значениями этого изменяемого множества, начиная с индекса start. Копирование прекратится, как только будет достигнут конец текущего изменяемого множества или конец целевого массива.
- xs
массив для заполнения.
- start
начальный индекс.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: A](dest: Buffer[B]): Unit
Копирует все элементы этого итерируемого объекта или итератора в буфер.
Примечание: не будет завершаться для бесконечных коллекций.
- dest
Буфер, в который копируются элементы.
- Definition Classes
- TraversableOnce
def count(p: (A) ⇒ Boolean): Int
Подсчитывает количество элементов в итерируемом объекте или итераторе, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- возвращает
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def diff(that: GenSet[A]): Set[A]
Вычисляет разность между этим множеством и другим множеством.
- that
множество элементов, которые нужно исключить.
- возвращает
множество, содержащее элементы этого множества, которые также не содержатся в заданном множестве
that.
- Definition Classes
- SetLike → GenSetLike
def drop(n: Int): Set[A]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- n
количество элементов, которые нужно удалить из этой итерируемой коллекции.
- возвращает
итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме первых
nэлементов, или же пустая итерируемая коллекция, если у этой итерируемой коллекции меньше чемnэлементов. Еслиnотрицательное, не удалять ни одного элемента.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def dropRight(n: Int): Set[A]
Выбирает все элементы, кроме последних n.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не является упорядоченным.
- n
Количество элементов для взятия
- возвращает
итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме последних
nэлементов, или же пустая итерируемая коллекция, если эта итерируемая коллекция имеет меньше, чемnэлементов.
- Определяющие классы
- IterableLike
def dropWhile(p: (A) ⇒ Boolean): Set[A]
Удаляет наибольший префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции является упорядоченным.
- возвращает
наибольший суффикс этой коллекции, элементы которого не удовлетворяют предикату
p.
- Определяющие классы
- TraversableLike → GenTraversableLike
def empty: Set[A]
- Определяющие классы
- GenericSetTemplate
def ensuring(cond: (Set[A]) ⇒ Boolean, msg: ⇒ Any): Set[A]
- Неявный
- Этот член добавлен неявным преобразованием из Set[A] в Ensuring[Set[A]], выполненным методом Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: (Set[A]) ⇒ Boolean): Set[A]
- Неявный
- Этот член добавлен неявным преобразованием из Set[A] в Ensuring[Set[A]], выполненным методом Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Set[A]
- Неявный
- Этот член добавлен неявным преобразованием из Set[A] в Ensuring[Set[A]], выполненным методом Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean): Set[A]
- Неявный
- Этот член добавлен неявным преобразованием из Set[A] в Ensuring[Set[A]], выполненным методом Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на не-null экземплярах AnyRef, и имеет три дополнительных свойства:
-
Он согласован: для любых не-null экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-null экземпляра 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
Сравнивает это множество с другим объектом на равенство.
Примечание: Эта операция содержит неявное преобразование типов: если that является множеством, оно предположит с неявным преобразованием, что имеет тот же тип элементов, что и это множество. Любое последующее исключение ClassCastException рассматривается как результат false.
- that
другой объект
- возвращает
trueеслиthatявляется множеством, которое содержит те же элементы, что и это множество.
- Определяющие классы
- GenSetLike → Equals → AnyRef → Any
def exists(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат хотя бы для одного элемента в этом итерируемом наборе.
Примечание: может не завершиться для бесконечных наборов.
- p
предикат, используемый для проверки элементов.
- возвращает
falseесли этот итерируемый набор пуст, иначеtrueесли заданный предикатpвыполняется для некоторых элементов этого итерируемого набора, в противном случаеfalse
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def filter(p: (A) ⇒ Boolean): Set[A]
Выбирает все элементы этого итерируемого набора, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- возвращает
новый итерируемый набор, состоящий из всех элементов этого итерируемого набора, которые удовлетворяют заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def filterNot(p: (A) ⇒ Boolean): Set[A]
Выбирает все элементы этого итерируемого набора, которые не удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- возвращает
новый итерируемый набор, состоящий из всех элементов этого итерируемого набора, которые не удовлетворяют заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда на объект больше нет ссылок.
Детали времени и способа вызова метода finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями зависят от платформы.
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- Примечание
не определено SLS как член AnyRef
def find(p: (A) ⇒ Boolean): Option[A]
Находит первый элемент итерируемого набора, удовлетворяющий предикату, если таковой существует.
Примечание: может не завершиться для бесконечных наборов.
Примечание: может возвращать разные результаты при разных запусках, если только тип базового набора не упорядочен.
- p
предикат, используемый для проверки элементов.
- возвращает
значение опции, содержащее первый элемент в итерируемом наборе, который удовлетворяет
p, илиNoneесли такового не существует.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def flatMap[B](f: (A) ⇒ GenTraversableOnce[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 => 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
функция, применяемая к каждому элементу.
- возвращает
новый набор, полученный путем применения заданной функции, возвращающей коллекцию
fк каждому элементу этого набора и конкатенации результатов.
- Definition Classes
- TraversableLike → GenTraversableLike → FilterMonadic
def flatten[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
тип элементов каждого итерируемого набора.
- возвращает
новый набор, полученный путем конкатенации всех элементов.
- Definition Classes
- GenericTraversableTemplate
def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1
Складывает элементы этого итерируемого объекта или итератора, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не завершится для коллекций бесконечного размера.
- A1
тип параметр для бинарного оператора, надтипа
A.- z
нейтральный элемент для операции сложения; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора сложения
opмежду всеми элементами иz, илиzесли этот итерируемый объект или итератор пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
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если этот итерируемый объект или итератор пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
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если этот итерируемый объект пуст.
- Definition Classes
- IterableLike → TraversableOnce → GenTraversableOnce
def forall(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этого итерируемого объекта.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
trueесли этот итерируемый объект пуст или указанный предикатpвыполняется для всех элементов этого итерируемого объекта, в противном случаеfalse.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def foreach(f: (A) ⇒ Unit): Unit
Применяет функцию f ко всем элементам этого изменяемого множества.
Примечание: этот метод лежит в основе реализации большинства других массовых операций. Подклассы должны переопределять этот метод, если существует более эффективная реализация.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fигнорируется.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с данной строкой format. Строки формата такие же, как для String.format (@see java.lang.String.format).
- Неявный
- Этот член добавлен неявным преобразованием из Set[A] в StringFormat[Set[A]] выполненным методом StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
def genericBuilder[B]: Builder[B, Set[B]]
Обобщённый билдер, который создаёт экземпляры Traversable произвольных типов элементов.
- Definition Classes
- GenericTraversableTemplate
final def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- returns
объект класса, соответствующий типу получателя во время выполнения.
def groupBy[K](f: (A) ⇒ K): immutable.Map[K, Set[A]]
Разделяет эту итерируемую коллекцию на карту итерируемых коллекций в соответствии с некоторой функцией-дискриминатором.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда принудительно вычисляет представление и возвращает новую итерируемую коллекцию.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- returns
-
Карта из ключей к итерируемым коллекциям, которая удовлетворяет следующему инварианту:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kсвязан с итерируемой коллекцией тех элементовxдля которыхf(x)равноk.
- Definition Classes
- TraversableLike → GenTraversableLike
def grouped(size: Int): Iterator[Set[A]]
Разделяет элементы на итерируемые коллекции фиксированного размера.
- size
количество элементов в группе
- returns
Итератор, генерирующий итерируемые коллекции размером
size, за исключением последней, которая будет меньше sizesizeесли элементы не делятся на размер без остатка.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
grouped
def hasDefiniteSize: Boolean
Проверяет, известен ли конечный размер этой итерируемой коллекции. Все строгие коллекции известны как имеющие конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true если все элементы были вычислены. Он возвращает false если поток еще не вычислен до конца. Непустые итераторы обычно возвращают false даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечных размеров. Типичная ошибка - бесконечный цикл. Эти методы всегда пытаются выполнить обход без предварительной проверки, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может гарантировать, что размер определен и бесконечное выполнение не является проблемой.
- returns
trueесли для этой коллекции известен конечный размер,falseв противном случае.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- returns
значение хэш-кода для этого объекта.
- Definition Classes
- GenSetLike → AnyRef → Any
def head: A
Выбирает первый элемент этой итерируемой коллекции.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
первый элемент этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementExceptionесли итерируемая коллекция пуста.
def headOption: Option[A]
Возвращает первый элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
первый элемент этой итерируемой коллекции, если она не пуста,
Noneесли она пуста.
- Definition Classes
- TraversableLike → GenTraversableLike
def init: Set[A]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, кроме последнего.
- Definition Classes
- TraversableLike → GenTraversableLike
- Exceptions thrown
UnsupportedOperationExceptionесли итерируемая коллекция пуста.
def inits: Iterator[Set[A]]
Итерируется по начальным подмножествам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее - пустой итерируемой коллекцией, а промежуточные значения - результатом последовательных применений init.
- returns
итератор по всем начальным подмножествам этой итерируемой коллекции
- Definition Classes
- TraversableLike
List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)
def intersect(that: GenSet[A]): Set[A]
Вычисляет пересечение этого множества с другим множеством.
- that
множество для пересечения.
- returns
новое множество, состоящее из всех элементов, которые присутствуют как в этом множестве, так и в заданном множестве
that.
- Definition Classes
- GenSetLike
def isEmpty: Boolean
Проверяет, пусто ли это множество.
- returns
trueесли в множестве нет элементов,falseв противном случае.
- Definition Classes
- SetLike → IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип объекта-приемника T0.
Обратите внимание, что результат теста выполняется с учётом стирания типов Scala. Следовательно, выражение 1.isInstanceOf[String] вернёт false, в то время как выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, поскольку тип аргумента стирается во время компиляции, нельзя проверить, относятся ли элементы списка к указанному типу.
- returns
trueесли объект-приемник является экземпляром стирания типаT0;falseв противном случае.
- Definition Classes
- Any
final def isTraversableAgain: Boolean
Проверяет, можно ли многократно итерировать эту коллекцию.
- returns
true
- Definition Classes
- TraversableLike → GenTraversableLike → GenTraversableOnce
def last: A
Выбирает последний элемент.
Примечание: могут возвращаться разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
Последний элемент этой коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
- Exceptions thrown
NoSuchElementExceptionЕсли коллекция пустая.
def lastOption: Option[A]
Возвращает последний элемент (или None, если коллекция пустая).
Примечание: могут возвращаться разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
последний элемент этой коллекции, если она непуста;
Noneесли она пуста.
- Definition Classes
- TraversableLike → GenTraversableLike
def map[B](f: (A) ⇒ B): Set[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этого изменяемого множества.
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новое изменяемое множество, полученное путём применения заданной функции
fк каждому элементу этого изменяемого множества и сборки результатов.
- Definition Classes
- SetLike → TraversableLike → GenTraversableLike → FilterMonadic
def mapResult[NewTo](f: (Set[A]) ⇒ NewTo): Builder[A, NewTo]
Создаёт новый билдер, применяя функцию преобразования к результатам этого билдера.
- NewTo
тип коллекции, возвращаемой функцией
f.- f
функция преобразования.
- returns
новый билдер, аналогичный текущему билдеру, за исключением того, что к результату этого билдера применяется функция преобразования.
- Definition Classes
- Builder
- Примечание
После вызова
mapResultисходный билдер больше не должен использоваться.
def max: A
Находит наибольший элемент.
- returns
наибольший элемент этого изменяемого множества.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationExceptionесли это изменяемое множество пустое.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этого изменяемого множества с наибольшим значением, измеренным функцией f.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если это изменяемое множество пусто.
def min: A
Находит наименьший элемент.
- возвращает
наименьший элемент этого изменяемого множества
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если это изменяемое множество пусто.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- возвращает
первый элемент этого изменяемого множества с наименьшим значением, измеренным функцией f.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если это изменяемое множество пусто.
def mkString: String
Отображает все элементы этого итерируемого объекта или итератора в строке.
- возвращает
строковое представление этого итерируемого объекта или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этого итерируемого объекта или итератора следуют друг за другом без разделительной строки.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этого итерируемого объекта или итератора в строке с использованием разделительной строки.
- sep
разделительная строка.
- возвращает
строковое представление этого итерируемого объекта или итератора. В результирующей строке строковые представления (с помощью метода
toString) всех элементов этого итерируемого объекта или итератора разделяются строкойsep.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого итерируемого объекта или итератора в строке с использованием начальной, конечной и разделительных строк.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- возвращает
строковое представление этого итерируемого объекта или итератора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (с помощью методаtoString) всех элементов этого итерируемого объекта или итератора разделяются строкойsep.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- возвращает
true, если аргумент не является ссылкой на объект получателя;falseв противном случае.
- Определяющие классы
- AnyRef
def newBuilder: Builder[A, Set[A]]
Общее реализация newBuilder для всех изменяемых множеств в терминах empty. Переопределяет реализацию в collection.SetLike для повышения эффективности.
- Атрибуты
- protected[this]
- Определяющие классы
- SetLike → SetLike → TraversableLike → HasNewBuilder
def nonEmpty: Boolean
Проверяет, не является ли итерируемый объект или итератор пустым.
- возвращает
true, если итерируемый объект или итератор содержит хотя бы один элемент,falseв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуждает единственную нить, которая ожидает монитора объекта-получателя.
- Классы-определения
- AnyRef
- Аннотации
- @native()
- Примечание
не указано SLS как член AnyRef
final def notifyAll(): Unit
Разбуждает все нити, которые ожидают монитора объекта-получателя.
- Классы-определения
- AnyRef
- Аннотации
- @native()
- Примечание
не указано SLS как член AnyRef
def par: ParSet[A]
Возвращает параллельную реализацию этого набора.
Для большинства типов наборов этот метод создаёт новый параллельный набор, копируя все элементы. Для этих наборов, par занимает линейное время. Изменяемые наборы в этой категории не создают изменяемый параллельный набор, который имеет тот же базовый набор данных, поэтому изменения в одном наборе не будут отражены в другом.
Специфические наборы (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельный набор, который использует тот же базовый набор данных. Для этих наборов, par занимает постоянное или подлинейное время.
Все параллельные наборы возвращают ссылку на себя.
- возвращает
параллельную реализацию этого набора
- Классы-определения
- Parallelizable
def parCombiner: Combiner[A, ParSet[A]]
Реализация par по умолчанию использует комбинатор, предоставленный этим методом, для создания нового параллельного набора.
- возвращает
комбинатор для параллельного набора типа
ParRepr
- Атрибуты
- protected[this]
- Классы-определения
- SetLike → SetLike → TraversableLike → Parallelizable
def partition(p: (A) ⇒ Boolean): (Set[A], Set[A])
Разделяет этот набор по коллекции на два набора согласно предикату.
- p
предикат, по которому происходит разделение.
- возвращает
пара коллекций: первая коллекция содержит все элементы, удовлетворяющие предикату
p, а вторая — все элементы, которые не удовлетворяют предикату. Относительный порядок элементов в результирующих коллекциях совпадает с порядком в исходной коллекции.
- Классы-определения
- TraversableLike → GenTraversableLike
def product: A
Перемножает элементы этого набора.
- возвращает
произведение всех элементов в этом изменяемом наборе чисел типа
Int. ВместоInt, любой другой типTс неявной реализациейNumeric[T]может использоваться в качестве типа элементов изменяемого набора и как тип результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1
Применяет указанный ассоциативный бинарный оператор к элементам этого набора.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
- A1
Тип параметра для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- возвращает
Результат применения оператора
opмежду всеми элементами, если набор не пустой.
- Классы-определения
- TraversableOnce → GenTraversableOnce
- Исключения
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- элементы этого набора.
- Классы-определения
- TraversableOnce
- Исключения
UnsupportedOperationException, если этот набор пустой.
def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
Применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора, слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceLeft(op)если этот итерируемый объект или итератор не пуст,Noneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]
Сводит элементы этого итерируемого объекта или итератора, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок, в котором выполняются операции над элементами, не указан и может быть недетерминированным.
- A1
Типовой параметр для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Необязательное значение, содержащее результат применения оператора reduce
opмежду всеми элементами, если коллекция не пуста, иNoneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
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являются элементами этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableOnce → GenTraversableOnce
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта итерируемая коллекция пуста.
def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
Применяет бинарный оператор ко всем элементам этого итерируемого объекта или итератора, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceRight(op)если этот итерируемый объект или итератор не пуст,Noneв противном случае.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def remove(elem: A): Boolean
Удаляет элемент из этого множества.
- elem
Элемент, который нужно удалить.
- returns
trueесли элемент ранее присутствовал в множестве,falseв противном случае.
- Определяющие классы
- SetLike
def repr: Set[A]
Коллекция типа итерируемая коллекция, лежащая в основе этого объекта TraversableLike. По умолчанию это реализовано как сам объект TraversableLike, но это может быть переопределено.
- Определяющие классы
- TraversableLike → GenTraversableLike
def result(): Set[A]
Результат, когда это множество используется как строитель
- returns
само представление множества.
def retain(p: (A) ⇒ Boolean): Unit
Удаляет все элементы из множества, которые не удовлетворяют предикату.
- p
предикат, используемый для проверки элементов. В множестве сохраняются только элементы, для которых
pвозвращаетtrue; все остальные удаляются.
- Определяющие классы
- SetLike
def reversed: List[A]
- Attributes
- protected[this]
- Definition Classes
- TraversableOnce
def sameElements(that: GenIterable[A]): Boolean
Проверяет, содержит ли другая итерируемая коллекция те же элементы в том же порядке, что и этот изменяемый набор.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- that
коллекция для сравнения.
- returns
true, если обе коллекции содержат одни и те же элементы в том же порядке; false в противном случае.
- Definition Classes
- IterableLike → GenIterableLike
def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[Set[A], B, That]): That
Вычисляет префиксное сканирование элементов коллекции.
Примечание: нейтральный элемент может применяться более одного раза.
- B
тип элементов результирующей коллекции
- That
тип результирующей коллекции
- z
нейтральный элемент для оператора
- op
ассоциативный оператор для сканирования
- cbf
фабрика комбинирования, которая предоставляет комбинирователь
- returns
новая итерируемая коллекция, содержащая префиксное сканирование элементов в этой итерируемой коллекции
- Definition Classes
- TraversableLike → GenTraversableLike
def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[Set[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
неявное значение класса, определяющее класс результата из текущего типа представления и нового типа элемента.
- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[Set[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.
Примечание: не завершит работу для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
неявное значение класса, определяющее класс результата из текущего типа представления и нового типа элемента.
- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0) Поведение метода изменилось. Предыдущее поведение можно воспроизвести с помощью scanRight.reverse.
def seq: Set[A]
Версия этой коллекции со всеми операциями, реализованными последовательно (т. е. в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределяется для возвращения последовательной реализации этой коллекции. В обоих случаях его сложность равна O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- Set → Set → GenSet → GenSetLike → Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce
def size: Int
Размер этой коллекции или итератора.
Примечание: не завершит работу для коллекций бесконечного размера.
- returns
количество элементов в этой коллекции или итераторе.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def sizeHint(coll: TraversableLike[_, _], delta: Int): Unit
Указание, что ожидается, что result этого билдера будет иметь тот же размер, что и заданная коллекция, плюс некоторая величина. Это будет указано только в том случае, если для коллекции известен метод size. В настоящее время это предполагается только для коллекций типа IndexedSeqLike. Некоторые классы билдеров будут оптимизировать своё представление на основе этого указания. Однако реализации билдеров по-прежнему должны работать корректно, даже если указание неверно, т. е. добавлено другое количество элементов.
- coll
коллекция, которая служит подсказкой для размера результата.
- delta
поправка, которая добавляется к
coll.sizeдля получения указания о размере.
- Definition Classes
- Builder
def sizeHint(coll: TraversableLike[_, _]): Unit
Указание, что ожидается, что result этого билдера будет иметь тот же размер, что и заданная коллекция, плюс некоторая величина. Это будет указано только в том случае, если для коллекции известен метод size, что определяется вызовом sizeHint.
Некоторые классы билдеров будут оптимизировать своё представление на основе этого указания. Однако реализации билдеров по-прежнему должны работать корректно, даже если указание неверно, т. е. добавлено другое количество элементов.
- coll
коллекция, которая служит подсказкой для размера результата.
- Definition Classes
- Builder
def sizeHint(size: Int): Unit
Указание, сколько элементов ожидается добавить при следующем вызове result. Некоторые классы билдеров будут оптимизировать своё представление на основе этого указания. Однако реализации билдеров по-прежнему должны работать корректно, даже если указание неверно, т. е. добавлено другое количество элементов.
- size
указание о количестве добавляемых элементов.
- Definition Classes
- Builder
def sizeHintBounded(size: Int, boundingColl: TraversableLike[_, _]): Unit
Указание, сколько элементов ожидается добавить при следующем вызове result, вместе с верхней границей, задаваемой размером другой коллекции. Некоторые классы билдеров будут оптимизировать своё представление на основе этого указания. Однако реализации билдеров по-прежнему должны работать корректно, даже если указание неверно, т. е. добавлено другое количество элементов.
- size
указание о количестве добавляемых элементов.
- boundingColl
ограничивающая коллекция. Если это IndexedSeqLike, то размеры, большие, чем размер коллекции, уменьшаются.
- Definition Classes
- Builder
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если его можно вычислить недорого.
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер нельзя определить недорого
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(from: Int, until: Int): Set[A]
Выбирает интервал элементов. Возвращаемая коллекция состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
итерируемую коллекцию, содержащую элементы, большие или равные индексу
from, простираясь до (но не включая) индексаuntilэтой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def sliding(size: Int, step: Int): Iterator[Set[A]]
Группирует элементы в блоки фиксированного размера, пропуская по ним "скользящее окно" (в отличие от разбиения, как это делается в grouped).
- size
количество элементов в группе
- step
расстояние между первыми элементами последовательных групп
- returns
Итератор, генерирующий итерируемые коллекции размера
size, за исключением последнего элемента (который может быть единственным), который будет усечён, если оставшихся элементов меньше, чемsize.
- Definition Classes
- IterableLike
- См. также
scala.collection.Iterator, метод
sliding
def sliding(size: Int): Iterator[Set[A]]
Группирует элементы в блоки фиксированного размера, пропуская по ним "скользящее окно" (в отличие от разбиения, как это делается в grouped.) Шаг "скользящего окна" установлен в единицу.
- size
количество элементов в группе
- returns
Итератор, генерирующий итерируемые коллекции размера
size, за исключением последнего элемента (который может быть единственным), который будет усечён, если оставшихся элементов меньше, чемsize.
- Definition Classes
- IterableLike
- См. также
scala.collection.Iterator, метод
sliding
def span(p: (A) ⇒ Boolean): (Set[A], Set[A])
Разделяет эту коллекцию перебираемых элементов на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
пара, состоящая из самого длинного префикса этой перебираемой коллекции, чьи элементы все удовлетворяют
p, и остальной части этой перебираемой коллекции.
- Definition Classes
- TraversableLike → GenTraversableLike
def splitAt(n: Int): (Set[A], Set[A])
Разделяет эту перебираемую коллекцию на две части в заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- n
позиция, в которой нужно произвести разделение.
- returns
пара перебираемых коллекций, состоящая из первых
nэлементов этой перебираемой коллекции и остальных элементов.
- Definition Classes
- TraversableLike → GenTraversableLike
def stringPrefix: String
Определяет префикс представления этого объекта в виде строки.
- returns
представление в виде строки, которое начинается с результата
toString, применённого к этому набору. Если не переопределено, это просто"Set".
- Definition Classes
- SetLike → TraversableLike → GenTraversableLike
def subsetOf(that: GenSet[A]): Boolean
Проверяет, является ли этот набор подмножеством другого набора.
- that
набор для проверки.
- returns
true, если этот набор является подмножествомthat, т.е. если каждый элемент этого набора также является элементомthat.
- Definition Classes
- GenSetLike
def subsets(): Iterator[Set[A]]
def subsets(len: Int): Iterator[Set[A]]
Итератор по всем подмножествам этого набора заданного размера. Если запрошенный размер невозможен, возвращается пустой итератор.
- len
размер подмножеств.
- returns
итератор.
- Definition Classes
- SetLike
def sum: A
Суммирует элементы этой коллекции.
- returns
сумма всех элементов в этом изменяемом наборе чисел типа
Int. ВместоInt, может быть использован любой другой типTс неявнымNumeric[T]-реализацией как тип элемента изменяемого набора и как тип результатаsum. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
def tail: Set[A]
Выбирает все элементы, кроме первого.
Примечание: могут быть получены разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
коллекция с коллекцией, состоящей из всех элементов этой коллекции, кроме первого.
- Definition Classes
- TraversableLike → GenTraversableLike
- Исключения
java.lang.UnsupportedOperationException, если коллекция пуста.
def tails: Iterator[Set[A]]
Итерируется по хвостам этой коллекции. Первое значение будет этой коллекцией, а последнее — пустой коллекцией, а промежуточные значения — результатами последовательных применений tail.
- returns
итератор по всем хвостам этой коллекции
- Definition Classes
- TraversableLike
List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)
def take(n: Int): Set[A]
Выбирает первые n элементов.
Примечание: могут быть получены разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов для взятия из этой итерируемой коллекции.
- returns
итерируемая коллекция, содержащая только первые
nэлементов этой итерируемой коллекции, или вся итерируемая коллекция, если она содержит менееnэлементов. Еслиnотрицательно, возвращает пустую итерируемую коллекцию.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def takeRight(n: Int): Set[A]
Выбирает последние n элементов.
Примечание: могут быть получены разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов для взятия
- returns
итерируемая коллекция, содержащая только последние
nэлементов этой итерируемой коллекции, или вся итерируемая коллекция, если она содержит менееnэлементов.
- Definition Classes
- IterableLike
def takeWhile(p: (A) ⇒ Boolean): Set[A]
Берет самую длинную префиксную последовательность элементов, удовлетворяющих предикату.
Примечание: могут быть получены разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
самый длинный префикс этой итерируемой коллекции, все элементы которого удовлетворяют предикату
p.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def thisCollection: collection.Iterable[A]
Базовая коллекция, рассматриваемая как экземпляр Iterable. По умолчанию реализована как текущий объект коллекции, но это можно переопределить.
- Attributes
- protected[this]
- Definition Classes
- IterableLike → TraversableLike
def to[Col[_]]: Col[A]
Преобразует это изменяемое множество в другое, копируя все элементы.
- Col
Тип коллекции для построения.
- returns
новая коллекция, содержащая все элементы этого изменяемого множества.
- Definition Classes
- TraversableLike → TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует это изменяемое множество в массив.
- returns
массив, содержащий все элементы этого изменяемого множества. Для типа элементов этого изменяемого множества должен быть доступен
ClassTag.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def toBuffer[A1 >: A]: Buffer[A1]
Использует содержимое этого множества для создания нового изменяемого буфера.
- returns
буфер, содержащий все элементы этого множества.
- Definition Classes
- SetLike → TraversableOnce → GenTraversableOnce
def toCollection(repr: Set[A]): collection.Iterable[A]
Преобразование из наборов типа Repr в объекты Iterable. По умолчанию это реализуется как просто приведение типа, но это можно переопределить.
- Атрибуты
- protected[this]
- Определяющие классы
- IterableLike → TraversableLike
def toIndexedSeq: immutable.IndexedSeq[A]
Преобразует это обозримое множество или итератор в индексированную последовательность.
Примечание: не будет завершено для бесконечных коллекций.
- возвращает
индексированная последовательность, содержащая все элементы этого обозримого множества или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toIterable: collection.Iterable[A]
Возвращает эту итерируемую коллекцию как итерируемую коллекцию.
Новый набор не будет создан; ленивые коллекции останутся ленивыми.
Примечание: не будет завершено для бесконечных коллекций.
- возвращает
коллекцию
Iterable, содержащую все элементы этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableOnce → GenTraversableOnce
def toIterator: Iterator[A]
Возвращает итератор над элементами в этой итерируемой коллекции. Возвращает тот же результат, что и iterator.
Примечание: не будет завершено для бесконечных коллекций.
- возвращает
итератор, содержащий все элементы этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableLike → GenTraversableOnce
- Аннотации
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toList: List[A]
Преобразует это обозримое множество или итератор в список.
Примечание: не будет завершено для бесконечных коллекций.
- возвращает
список, содержащий все элементы этого обозримого множества или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toMap[T, U]: collection.Map[T, U]
Преобразует эту изменяемую коллекцию в словарь. Этот метод недоступен, если элементы не являются членами Tuple2, каждый ((T, U)) становится парой ключ-значение в словаре. Повторяющиеся ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, то ключ в результирующем словаре не определен.
- возвращает
словарь типа
immutable.Map[T, U], содержащий все пары ключ/значение типа(T, U)этого изменяемого набора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toParArray: ParArray[T]
- Неявный
- Этот член добавлен неявным преобразованием из Set[A] в CollectionsHaveToParArray[Set[A], T] выполняемого методом CollectionsHaveToParArray в scala.collection.parallel. Это преобразование произойдет только если в области видимости есть неявное значение типа (Set[A]) ⇒ GenTraversableOnce[T].
- Определяющие классы
- CollectionsHaveToParArray
def toSeq: collection.Seq[A]
Преобразует это изменяемое множество в последовательность.
: предполагает быстрый метод Notesize. Подклассы должны переопределить, если это не так.
- возвращает
последовательность, содержащую все элементы этого изменяемого множества.
- Определяющие классы
- SetLike → SetLike → TraversableOnce → GenTraversableOnce
def toSet[B >: A]: immutable.Set[B]
Преобразует это обозримое множество или итератор в множество.
Примечание: не будет завершено для бесконечных коллекций.
- возвращает
множество, содержащее все элементы этого обозримого множества или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toStream: immutable.Stream[A]
Преобразует эту итерируемую коллекцию в поток.
- возвращает
поток, содержащий все элементы этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableLike → GenTraversableOnce
def toString(): String
Создаёт строковое представление этого объекта. В зависимости от платформы, это представление может отличаться. На платформе Java это конкатенация имени класса, символа "@" и хэш-кода объекта в шестнадцатеричном формате.
- возвращает
строковое представление объекта.
- Определяющие классы
- SetLike → Function1 → TraversableLike → AnyRef → Any
def toTraversable: collection.Traversable[A]
Преобразует эту коллекцию типа Traversable в другой тип Traversable. Вернёт ту же коллекцию, если она уже является Traversable.
Примечание: не завершится для бесконечных коллекций.
- возвращает
Traversable, содержащий все элементы этой Traversable коллекции.
- Определяющие классы
- TraversableLike → TraversableOnce → GenTraversableOnce
- Аннотации
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toVector: Vector[A]
Преобразует эту Traversable или итератор в Vector.
Примечание: не завершится для бесконечных коллекций.
- возвращает
вектор, содержащий все элементы этой Traversable или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def transpose[B](implicit asTraversable: (A) ⇒ GenTraversableOnce[B]): Set[Set[B]]
Транспонирует эту коллекцию коллекций Traversable в коллекцию коллекций.
Тип результирующей коллекции будет определён статическим типом коллекции. Например:
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
тип элементов каждой Traversable коллекции.
- asTraversable
неявное преобразование, которое утверждает, что тип элемента этой коллекции является
Traversable.- возвращает
двумерная коллекция коллекций, где n-я строка — это n-й столбец этой коллекции.
- Определяющие классы
- GenericTraversableTemplate
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.9.0)
transposeвызываетIllegalArgumentExceptionесли коллекции не имеют одинаковый размер.- Исключения
IllegalArgumentExceptionесли все коллекции в этой коллекции не имеют одинаковый размер.
def union(that: GenSet[A]): Set[A]
Вычисляет объединение множества и другого множества.
- that
множество, с которым нужно выполнить объединение.
- возвращает
новое множество, содержащее все элементы, которые присутствуют в этом множестве или в заданном множестве
that.
- Определяющие классы
- SetLike → GenSetLike
def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (Set[A1], Set[A2])
Преобразует эту коллекцию пар в две коллекции из первой и второй половины каждой пары.
val xs = Traversable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three))
- A1
тип первой половины пар элементов
- A2
тип второй половины пар элементов
- asPair
неявное преобразование, которое утверждает, что тип элемента этой коллекции является парой.
- возвращает
пара коллекций, содержащая первую и соответственно вторую половину каждой пары элементов этой коллекции.
- Определяющие классы
- GenericTraversableTemplate
def unzip3[A1, A2, A3](implicit asTriple: (A) ⇒ (A1, A2, A3)): (Set[A1], Set[A2], Set[A3])
Преобразует это множество троек в три множества из первого, второго и третьего элементов каждой тройки.
val xs = Traversable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three),
// Traversable(1, 2, 3))
- A1
тип первого члена элементов троек
- A2
тип второго члена элементов троек
- A3
тип третьего члена элементов троек
- asTriple
неявное преобразование, которое утверждает, что тип элементов этого множества — тройка.
- returns
тройка множеств, содержащих первый, второй, соответственно третий член каждой тройки элементов этого множества.
- Definition Classes
- GenericTraversableTemplate
def update(elem: A, included: Boolean): Unit
Обновляет наличие отдельного элемента в этом множестве.
Этот метод позволяет добавить или удалить элемент elem из этого множества в зависимости от значения параметра included. Обычно используется следующий синтаксис:
set(elem) = true // adds element set(elem) = false // removes element
- elem
элемент, который нужно добавить или удалить
- included
флаг, указывающий, нужно ли включать или исключать элемент.
- Definition Classes
- SetLike
def view(from: Int, until: Int): IterableView[A, Set[A]]
Создает нестрогую представленную часть среза этого итерируемого набора.
Примечание: разница между view и slice заключается в том, что view создает представление текущего итерируемого набора, тогда как slice создает новый итерируемый набор.
Примечание: view(from, to) эквивалентно view.slice(from, to)
Примечание: могут возвращаться разные результаты для разных запусков, если тип базового набора не упорядочен.
- from
индекс первого элемента представления
- until
индекс элемента, следующего за представлением
- returns
нестрогая представленная часть среза этого итерируемого набора, начинающаяся с индекса
fromи заканчивающаяся (но не включая) индексомuntil.
- Definition Classes
- IterableLike → TraversableLike
def view: IterableView[A, Set[A]]
Создает нестрогую представленную часть этого итерируемого набора.
- returns
нестрогая представленная часть этого итерируемого набора.
- Definition Classes
- IterableLike → TraversableLike
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
def withFilter(p: (A) ⇒ Boolean): FilterMonadic[A, Set[A]]
Создает нестрогое фильтрующее представление этого итерируемого набора.
Примечание: разница между c filter p и c withFilter p заключается в том, что первый создает новый набор, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.
Примечание: могут возвращаться разные результаты для разных запусков, если тип базового набора не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
объект класса
WithFilter, который поддерживаетmap,flatMap,foreach, иwithFilterоперации. Все эти операции применяются к тем элементам этого итерируемого набора, которые удовлетворяют предикатуp.
- Definition Classes
- TraversableLike → FilterMonadic
def zip[B](that: GenIterable[B]): Set[(A, B)]
Возвращает изменяемый набор, образованный из этого изменяемого набора и другой итерируемой коллекции, объединяя соответствующие элементы парами. Если одна из двух коллекций длиннее другой, её оставшиеся элементы игнорируются.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- B
тип второй половины возвращаемых пар
- that
Итерируемая коллекция, предоставляющая вторую половину каждой пары результата
- returns
новый изменяемый набор, содержащий пары, состоящие из соответствующих элементов этого изменяемого набора и
that. Длина возвращаемой коллекции равна минимальному значению из длин этого изменяемого набора иthat.
- Definition Classes
- IterableLike → GenIterableLike
def zipAll[B](that: collection.Iterable[B], thisElem: A, thatElem: B): Set[(A, B)]
Возвращает изменяемый набор, образованный из этого изменяемого набора и другой итерируемой коллекции, объединяя соответствующие элементы парами. Если одна из двух коллекций короче другой, для расширения короче коллекции до длины длиннее используются плейсхолдерные элементы.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- B
тип второй половины возвращаемых пар
- that
Итерируемая коллекция, предоставляющая вторую половину каждой пары результата
- thisElem
элемент, используемый для заполнения результата, если этот изменяемый набор короче
that.- thatElem
элемент, используемый для заполнения результата, если
thatкороче этого изменяемого набора.- returns
новый изменяемый набор, содержащий пары, состоящие из соответствующих элементов этого изменяемого набора и
that. Длина возвращаемой коллекции равна максимальному значению из длин этого изменяемого набора иthat. Если этот изменяемый набор корочеthat, для заполнения результата используются значенияthisElem. Еслиthatкороче этого изменяемого набора, для заполнения результата используются значенияthatElem.
- Definition Classes
- IterableLike → GenIterableLike
def zipWithIndex: Set[(A, Int)]
Объединяет этот изменяемый набор с его индексами.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
новый изменяемый набор, содержащий пары, состоящие из всех элементов этого изменяемого набора, соединённых со своими индексами. Индексы начинаются с
0.
- Definition Classes
- IterableLike → GenIterableLike
List("a", "b", "c").zipWithIndex = List(("a", 0), ("b", 1), ("c", 2))
def |(that: GenSet[A]): Set[A]
Вычисляет объединение между этим набором и другим набором.
Примечание: То же, что и union.
- that
набор для объединения с.
- returns
новый набор, содержащий все элементы, которые находятся в этом наборе или в заданном наборе
that.
- Definition Classes
- GenSetLike
def →[B](y: B): (Set[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из Set[A] в ArrowAssoc[Set[A]], выполненным методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
Оттенённые неявные члены значения
def +(other: String): String
- Неявный
- Этот член добавлен благодаря неявной конверсии из Set[A] в any2stringadd[Set[A]] выполненной методом any2stringadd в scala.Predef.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(set: any2stringadd[Set[A]]).+(other)
- Определяющие классы
- any2stringadd
def filter(p: (A) ⇒ Boolean): TraversableOnce[A]
- Неявный
- Этот член добавлен благодаря неявной конверсии из Set[A] в MonadOps[A] выполненной методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(set: MonadOps[A]).filter(p)
- Определяющие классы
- MonadOps
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен благодаря неявной конверсии из Set[A] в MonadOps[A] выполненной методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(set: MonadOps[A]).flatMap(f)
- Определяющие классы
- MonadOps
def map[B](f: (A) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен благодаря неявной конверсии из Set[A] в MonadOps[A] выполненной методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(set: MonadOps[A]).map(f)
- Определяющие классы
- MonadOps
def withFilter(p: (A) ⇒ Boolean): Iterator[A]
- Неявный
- Этот член добавлен благодаря неявной конверсии из Set[A] в MonadOps[A] выполненной методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:(set: MonadOps[A]).withFilter(p)
- Определяющие классы
- MonadOps
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/mutable/Set.html
Обобщённый тракт для изменяемых множеств.
Чтобы реализовать конкретное изменяемое множество, необходимо предоставить реализации следующих методов:
Если вы хотите, чтобы методы, такие как
take,drop,filterвозвращали множество того же типа, вы также должны переопределить:Также рекомендуется переопределить методы
foreachиsizeдля повышения эффективности.1.0