Spec-Zone.ru › Scala 2.13 Library

Класс scala.Some

final case class Some[+A](value: A) extends Option[A] with Product with Serializable

Класс Some[A] представляет существующие значения типа A.

Аннотации
@SerialVersionUID()
Источник
Option.scala
С момента

1.0

Линейные супертипы
Option[A], java.io.Serializable, Product, Equals, collection.IterableOnce[A], AnyRef, Any

Конструкторы экземпляров

new Some(value: A)

Типовые члены

class WithFilter extends AnyRef

Нам нужен целый класс WithFilter, чтобы соблюсти контракт "не создает новую коллекцию", даже если вряд ли это будет важно в коллекции с максимальным размером 1.

Определяющие классы
Option

Значения членов

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 +(other: String): String

Неявный
Этот член добавляется с помощью неявного преобразования из Some[A] в any2stringadd[Some[A]], выполненное методом any2stringadd в scala.Predef.
Definition Classes
any2stringadd

final def ++[B >: A](suffix: collection.IterableOnce[B]): collection.Iterable[B]

Псевдоним для concat

Неявный
Этот член добавляется с помощью неявного преобразования из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
IterableOps
Annotations
@inline()

def ->[B](y: B): (Some[A], B)

Неявный
Этот член добавлен неявным преобразованием из Some[A] вArrowAssoc[Some[A]] посредством метода ArrowAssoc в scala.Predef.
Классы определений
ArrowAssoc
Аннотации
@inline()

final def ==(arg0: Any): Boolean

Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

возвращает

true, если объект получателя эквивалентен аргументу; false в противном случае.

Классы определений
AnyRef → Any

final def addString(b: collection.mutable.StringBuilder): collection.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

строковый буфер, в который добавляются элементы.

возвращает

строковый буфер b, в который были добавлены элементы.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] посредством метода option2Iterable в scala.Option.
Классы определений
IterableOnceOps
Аннотации
@inline()

final def addString(b: collection.mutable.StringBuilder, sep: String): collection.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, в который были добавлены элементы.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] в методе option2Iterable в scala.Option.
Классы определений
IterableOnceOps
Аннотации
@inline()

def addString(b: collection.mutable.StringBuilder, start: String, sep: String, end: String): collection.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, в который были добавлены элементы.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] в методе option2Iterable в scala.Option.
Классы определений
IterableOnceOps

final def asInstanceOf[T0]: T0

Преобразовать объект-получатель в тип T0.

Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] выбросит исключение ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] — нет. В последнем примере, из-за стирания аргументов типа во время компиляции, невозможно проверить, соответствуют ли элементы списка требуемому типу.

возвращает

объект-получатель.

Классы-определения
Any
Исключения

ClassCastException, если объект-получатель не является экземпляром стираемого типа T0.

def clone(): AnyRef

Создать копию объекта-получателя.

По умолчанию метод clone зависит от платформы.

возвращает

копия объекта-получателя.

Атрибуты
protected[java.lang]
Классы-определения
AnyRef
Аннотации
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
Примечание

не указано SLS в качестве члена AnyRef

final def collect[B](pf: PartialFunction[A, B]): Option[B]

Возвращает scala.Some содержащий результат применения pf к значению, содержащемуся в этом scala.Option, если этот параметр непустой и pf определено для этого значения. В противном случае возвращает None.

pf

частичная функция.

возвращает

результат применения pf к значению этого scala.Option (если возможно) или None.

Классы-определения
Option
Аннотации
@inline()
Пример:
    // Returns Some(HTTP) because the partial function covers the case.
    Some("http") collect {case "http" => "HTTP"}
    
    // Returns None because the partial function doesn't cover the case.
    Some("ftp") collect {case "http" => "HTTP"}
    
    // Returns None because the option is empty. There is no value to pass to the partial function.
    None collect {case value => value}

def collectFirst[B](pf: PartialFunction[A, B]): Option[B]

Находит первый элемент итерируемого набора, для которого заданная частичная функция определена, и применяет частичную функцию к нему.

Примечание: может не завершиться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции упорядочен.

pf

частичная функция

returns

значение Option, содержащее pf, применённое к первому значению, для которого оно определено, или None, если такого значения нет.

Неявный
Этот член добавляется неявным преобразованием из Some[A] вIterable[A] посредством метода option2Iterable в scala.Option.
Определяющие классы
IterableOnceOps
Пример:

    Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)

def concat[B >: A](suffix: collection.IterableOnce[B]): collection.Iterable[B]

Возвращает новый итерируемый набор, содержащий элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов итерируемого набора — это наиболее общий суперкласс, охватывающий типы элементов двух операндов.

B

тип элементов возвращаемого набора.

suffix

перебираемый набор для добавления.

returns

новый итерируемый набор, содержащий все элементы этого итерируемого набора, за которыми следуют все элементы suffix.

Неявный
Этот член добавляется неявным преобразованием из Some[A] вIterable[A] посредством метода option2Iterable в scala.Option.
Определяющие классы
IterableOps

final def contains[A1 >: A](elem: A1): Boolean

Проверяет, содержит ли вариант заданное значение в качестве элемента.

Это эквивалентно:

option match {
  case Some(x) => x == elem
  case None    => false
}
elem

элемент для проверки.

returns

true если у варианта есть элемент, равный (как определено ==) elem, false в противном случае.

Определяющие классы
Option
Пример:
    // Returns true because Some instance contains string "something" which equals "something".
    Some("something") contains "something"
    
    // Returns false because "something" != "anything".
    Some("something") contains "anything"
    
    // Returns false when method called on None.
    None contains "anything"

def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Int

Копировать элементы в массив, возвращая количество записанных элементов.

Заполняет заданный массив xs начиная с индекса start максимум len элементами этого итерируемого набора.

Копирование прекратится, как только будут скопированы все элементы этого итерируемого набора, или будет достигнут конец массива, или len элементов.

B

тип элементов массива.

xs

массив для заполнения.

start

начальный индекс xs.

len

максимальное количество копируемых элементов.

returns

количество элементов, записанных в массив

Implicit
Этот член добавлен неявно посредством неявного преобразования из Some[A] вIterable[A] , выполненного методом option2Iterable в scala.Option.
Definition Classes
IterableOnceOps
Note

Повторное использование: После вызова этого метода итератор, на котором он был вызван, следует удалить. Использование его неопределено и может быть изменено. Примечание: не будет завершаться для коллекций бесконечного размера.

def copyToArray[B >: A](xs: Array[B], start: Int): Int

Копировать элементы в массив, возвращая количество записанных элементов.

Заполняет заданный массив xs начиная с индекса start значениями из этого итерируемого набора.

Копирование прекратится, как только будут скопированы все элементы этого итерируемого набора, или будет достигнут конец массива.

B

тип элементов массива.

xs

массив для заполнения.

start

начальный индекс xs.

returns

количество элементов, записанных в массив. Примечание: не будет завершаться для коллекций бесконечного размера.

Implicit
Этот член добавлен неявно посредством неявного преобразования из Some[A] вIterable[A] , выполненного методом option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

def copyToArray[B >: A](xs: Array[B]): Int

Копирует элементы в массив, возвращая количество скопированных элементов.

Заполняет заданный массив xs начиная с индекса start значениями этого итерируемого набора.

Копирование прекратится, как только будут скопированы все элементы этого итерируемого набора или будет достигнут конец массива.

B

тип элементов массива.

xs

массив для заполнения.

returns

количество элементов, записанных в массив. Примечание: не будет завершено для коллекций бесконечного размера.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] при помощи метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

def corresponds[B](that: collection.IterableOnce[B])(p: (A, B) => Boolean): Boolean

Проверяет, соответствуют ли все элементы итератора этой коллекции соответствующим элементам другой коллекции, удовлетворяя условию предиката.

B

тип элементов that

that

другая коллекция

p

предикат проверки, который связывает элементы обеих коллекций

returns

true если обе коллекции имеют одинаковую длину и p(x, y) равно true для всех соответствующих элементов x этого итератора и y элементов that, в противном случае false

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] при помощи метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

def drop(n: Int): collection.Iterable[A]

Выбирает все элементы, кроме первых n.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

n

количество элементов, которые нужно удалить из этой итерируемой коллекции.

returns

итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, кроме первых n элементов, или же пустая итерируемая коллекция, если в этой итерируемой коллекции меньше чем n элементов. Если n отрицательное, то элементы не удаляются.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненное методом option2Iterable в scala.Option.
Определяющие классы
IterableOps → IterableOnceOps
Примечание

Повторное использование: после вызова этого метода нужно удалить итератор, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе тоже.

def dropRight(n: Int): collection.Iterable[A]

Выбирает все элементы, кроме последних n.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

n

количество элементов, которые нужно удалить из этой итерируемой коллекции.

returns

итерируемая коллекция, содержащая все элементы этой итерируемой коллекции, кроме последних n элементов, или же пустая итерируемая коллекция, если в этой итерируемой коллекции меньше чем n элементов. Если n отрицательное, то элементы не удаляются.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненное методом option2Iterable в scala.Option.
Определяющие классы
IterableOps

def dropWhile(p: (A) => Boolean): collection.Iterable[A]

Удаляет самую длинную префиксную часть элементов, удовлетворяющих предикату.

Примечание: может возвращать разные результаты для разных запусков, если только тип базового набора данных не является упорядоченным.

p

Предикат, используемый для проверки элементов.

returns

наиболее длинный суффикс этого итерируемого набора данных, первый элемент которого не удовлетворяет предикату p.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненным методом option2Iterable в scala.Option.
Классы-определения
IterableOps → IterableOnceOps
Примечание

Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только тот итератор, который был возвращён. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе тоже.

def empty: collection.Iterable[A]

Пустой итерируемый набор того же типа, что и этот итерируемый набор

returns

пустой итерируемый набор типа C.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненным методом option2Iterable в scala.Option.
Классы-определения
IterableFactoryDefaults → IterableOps

def ensuring(cond: (Some[A]) => Boolean, msg: => Any): Some[A]

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Ensuring[Some[A]] выполненным методом Ensuring в scala.Predef.
Классы-определения
Ensuring

def ensuring(cond: (Some[A]) => Boolean): Some[A]

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Ensuring[Some[A]] с помощью метода Ensuring в scala.Predef.
Классы определения
Ensuring

def ensuring(cond: Boolean, msg: => Any): Some[A]

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Ensuring[Some[A]] с помощью метода Ensuring в scala.Predef.
Классы определения
Ensuring

def ensuring(cond: Boolean): Some[A]

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Ensuring[Some[A]] с помощью метода Ensuring в scala.Predef.
Классы определения
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

final def exists(p: (A) => Boolean): Boolean

Возвращает true, если данная опция не пустая и предикат p возвращает true при применении к значению этого scala.Option. В противном случае возвращает false.

Это эквивалентно:

option match {
  case Some(x) => p(x)
  case None    => false
}
p

предикат для проверки

Definition Classes
Option
Annotations
@inline()

final def filter(p: (A) => Boolean): Option[A]

Возвращает этот scala.Option, если он не пустой и применение предиката p к значению этого scala.Option возвращает true. В противном случае возвращает None.

Это эквивалентно:

option match {
  case Some(x) if p(x) => Some(x)
  case _               => None
}
p

предикат для проверки.

Definition Classes
Option
Annotations
@inline()

final def filterNot(p: (A) => Boolean): Option[A]

Возвращает этот scala.Option, если он не пустой и применение предиката p к значению этого scala.Option возвращает false. В противном случае возвращает None.

Это эквивалентно:

option match {
  case Some(x) if !p(x) => Some(x)
  case _                => None
}
p

предикат для проверки.

Definition Classes
Option
Annotations
@inline()

def finalize(): Unit

Вызывается сборщиком мусора для объекта-получателя, когда к объекту больше нет ссылок.

Подробности о том, когда и будет ли вызываться метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.Throwable])
Note

не определен SLS как член AnyRef

final def flatMap[B](f: (A) => Option[B]): Option[B]

Возвращает результат применения f к значению этого scala.Option, если этот scala.Option непустой. Возвращает None, если этот scala.Option пустой. Несколько отличается от map в том, что f ожидается, что вернёт scala.Option (который может быть None).

Это эквивалентно:

option match {
  case Some(x) => f(x)
  case None    => None
}
f

функция для применения

Definition Classes
Option
Annotations
@inline()
See also

map

foreach

def flatten[B](implicit ev: <:<[A, Option[B]]): Option[B]

Возвращает вложенное значение scala.Option, если оно непустое. В противном случае возвращает None.

Это эквивалентно:

option match {
  case Some(Some(b)) => Some(b)
  case _             => None
}
ev

явное преобразование, которое утверждает, что значение также является scala.Option.

Definition Classes
Option
Пример:
    Some(Some("something")).flatten
See also

flatMap

final def fold[B](ifEmpty: => B)(f: (A) => B): B

Возвращает результат применения f к значению этого scala.Option, если scala.Option непустой. В противном случае вычисляет выражение ifEmpty.

Это эквивалентно:

option match {
  case Some(x) => f(x)
  case None    => ifEmpty
}

Это также эквивалентно:

option map f getOrElse ifEmpty
ifEmpty

выражение для вычисления, если пусто.

f

функция для применения, если непусто.

Definition Classes
Option
Annotations
@inline()

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 если этот итерируемый набор пуст.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] через метод option2Iterable в scala.Option.
Definition Classes
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 если этот итерируемый набор пуст.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] через метод option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

final def forall(p: (A) => Boolean): Boolean

Возвращает true, если этот параметр пуст или предикат p возвращает true, когда применяется к значению этого scala.Option.

Это эквивалентно:

option match {
  case Some(x) => p(x)
  case None    => true
}
p

предикат для проверки

Definition Classes
Option
Annotations
@inline()

final def foreach[U](f: (A) => U): Unit

Применяет заданную процедуру f к значению параметра, если оно не пусто. В противном случае ничего не делает.

Это эквивалентно:

option match {
  case Some(x) => f(x)
  case None    => ()
}
f

процедура для применения.

Definition Classes
Option
Annotations
@inline()
См. также

map

flatMap

def formatted(fmtstr: String): String

Возвращает строку, отформатированную в соответствии с заданной format строкой. Строки форматирования аналогичны String.format (@см. java.lang.String.format).

Неявный
Этот член добавлен неявным преобразованием из Some[A] в StringFormat[Some[A]], выполненным методом StringFormat в scala.Predef.
Definition Classes
StringFormat
Annotations
@inline()

def get: A

Возвращает значение параметра.

Это эквивалентно:

option match {
  case Some(x) => x
  case None    => throw new Exception
}
Definition Classes
Some → Option
Исключения

java.util.NoSuchElementException если параметр пуст.

Примечание

Параметр должен быть непустым.

final def getClass(): Class[_ <: AnyRef]

Возвращает представление класса объекта в среде выполнения.

возвращает

объект класса, соответствующий типу получателя в среде выполнения.

Definition Classes
AnyRef → Any
Annotations
@native()

final def getOrElse[B >: A](default: => B): B

Возвращает значение опции, если опция непустая, иначе возвращает результат вычисления default.

Это эквивалентно:

option match {
  case Some(x) => x
  case None    => default
}
default

выражение по умолчанию.

Definition Classes
Option
Annotations
@inline()

def groupBy[K](f: (A) => K): Map[K, collection.Iterable[A]]

Разделяет это итерируемое коллекцию на карту итерируемых коллекций в соответствии с функцией-дискриминатором.

Примечание: Даже при применении к представлению или ленивой коллекции элементы всегда будут форсироваться.

K

тип ключей, возвращаемых функцией-дискриминатором.

f

функция-дискриминатор.

returns

Карта, сопоставляющая ключи итерируемым коллекциям, для которой выполняется следующее инвариантное свойство:

(xs groupBy f)(k) = xs filter (x => f(x) == k)

То есть, каждый ключ k сопоставляется с итерируемой коллекцией тех элементов x, для которых f(x) равно k.

Implicit
Этот член добавлен с помощью неявного преобразования из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
IterableOps

def groupMap[K, B](key: (A) => K)(f: (A) => B): Map[K, collection.Iterable[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

функция преобразования элементов

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] посредством метода option2Iterable в scala.Option.
Definition Classes
IterableOps

def groupMapReduce[K, B](key: (A) => K)(f: (A) => B)(reduce: (B, B) => B): 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)(_ + _)

Примечание: Даже при применении к представлению или ленивой коллекции, элементы всегда будут принудительно вычисляться.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] посредством метода option2Iterable в scala.Option.
Definition Classes
IterableOps

def grouped(size: Int): collection.Iterator[collection.Iterable[A]]

Разделяет элементы на итерируемые коллекции фиксированного размера.

размер

количество элементов в группе

возвращает

Итератор, производящий итерируемые коллекции размером size, за исключением последней, которая будет меньше размера size, если элементы не делятся равномерно.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] методом option2Iterable в scala.Option.
Определяющие классы
IterableOps
См. также

scala.collection.Iterator, метод grouped

def head: A

Выбирает первый элемент этой итерируемой коллекции.

Примечание: может возвращать разные результаты для разных запусков, если тип коллекции в основе не упорядочен.

возвращает

первый элемент этой итерируемой коллекции.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] методом option2Iterable в scala.Option.
Определяющие классы
IterableOps
Исключения

NoSuchElementException, если итерируемая коллекция пуста.

def headOption: Option[A]

Возвращает первый элемент или None, если коллекция пуста.

Примечание: может возвращать разные результаты для разных запусков, если тип коллекции в основе не упорядочен.

возвращает

первый элемент этой итерируемой коллекции, если она непуста, None в противном случае.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] методом option2Iterable в scala.Option.
Определяющие классы
IterableOps

def init: collection.Iterable[A]

Часть коллекции без последнего элемента.

Примечание: даже при применении к представлению или ленивой коллекции она всегда будет принудительно обрабатывать элементы.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] методом option2Iterable в scala.Option.
Определяющие классы
IterableOps

def inits: collection.Iterator[collection.Iterable[A]]

Итерируется по начальным фрагментам (inits) этого итерируемого набора. Первое значение будет этим итерируемым набором, а последнее — пустым итерируемым набором, промежуточные значения будут результатами последовательных применений init.

Примечание: Даже при применении к представлению или ленивому набору, элементы всегда будут форсироваться.

returns

итератор по всем начальным фрагментам (inits) этого итерируемого набора

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполняемого методом option2Iterable в scala.Option.
Definition Classes
IterableOps
Пример:

    List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)

final def isDefined: Boolean

Возвращает true, если опция является экземпляром scala.Some, иначе false.

Это эквивалентно:

option match {
  case Some(_) => true
  case None    => false
}
Definition Classes
Option

final def isEmpty: Boolean

Возвращает true, если опция является None, иначе false.

Это эквивалентно:

option match {
  case Some(_) => false
  case None    => true
}
Definition Classes
Option

final def isInstanceOf[T0]: Boolean

Проверяет, является ли динамический тип объекта-получателя T0.

Обратите внимание, что результат проверки учитывает семантику стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, поскольку аргумент типа стирается во время компиляции, проверить, являются ли элементы списка указанного типа, невозможно.

returns

true если объект-получатель является экземпляром стирания типа T0; false в противном случае.

Definition Classes
Any

def isTraversableAgain: Boolean

Проверяет, можно ли многократно проходить по этому итерируемому набору. Всегда истинно для Iterables и ложно для Iterators, если не переопределено.

returns

true если он многократно просматривается, false в противном случае.

Implicit
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполняемое методом option2Iterable в scala.Option.
Definition Classes
IterableOps → IterableOnceOps

def iterableFactory: IterableFactory[collection.Iterable]

Объект-компаньон этого итерируемого набора, предоставляющий различные методы создания.

Implicit
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполняемое методом option2Iterable в scala.Option.
Definition Classes
Iterable → IterableOps
Note

При реализации пользовательского типа коллекции и уточнении CC до нового типа, этот метод должен быть переопределен для возврата фабрики для нового типа (в противном случае компилятор выдаст ошибку).

def iterator: Iterator[A]

Возвращает одиночный итератор, возвращающий значение scala.Option, если оно непусто, или пустой итератор, если опция пуста.

Definition Classes
Option → IterableOnce

final def knownSize: Int

returns

Количество элементов в этой опции, если его можно легко вычислить, в противном случае -1. Легко обычно означает: Не требует обхода коллекции.

Definition Classes
Option → IterableOnce

def last: A

Выбирает последний элемент.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

возвращает

Последний элемент этой итерируемой коллекции.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] при выполнении метода option2Iterable в scala.Option.
Определяющие классы
IterableOps
Исключения

NoSuchElementException, если итерируемая коллекция пуста.

def lastOption: Option[A]

Выбирает последний элемент необязательно.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

возвращает

последний элемент этой итерируемой коллекции, если она непуста, None если она пуста.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] при выполнении метода option2Iterable в scala.Option.
Определяющие классы
IterableOps

def lazyZip[B]: ([B](that: Iterable[B])scala.collection.LazyZip2[A,B,_1.type]) forSome {val _1: collection.Iterable[A]}

Аналогично 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

тип второго элемента в каждой возможной паре

возвращает

декоратор LazyZip2 , который позволяет выполнять строгие операции над лениво вычисляемыми парами или объединёнными вызовами lazyZip. Также поддерживается неявное преобразование в Iterable[(A, B)].

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] при выполнении метода option2Iterable в scala.Option.
Определяющие классы
Iterable

final def map[B](f: (A) => B): Option[B]

Возвращает scala.Some, содержащий результат применения f к значению этого scala.Option, если этот scala.Option не пустой. В противном случае возвращает None.

Это эквивалентно:

option match {
  case Some(x) => Some(f(x))
  case None    => None
}
f

функция для применения

Definition Classes
Option
Annotations
@inline()
Примечание

Это аналогично flatMap за исключением того, что f не нужно обертывать результат в scala.Option.

См. также

flatMap

foreach

def max[B >: A](implicit ord: math.Ordering[B]): A

Находит наибольший элемент.

B

Тип, по которому определено упорядочение.

ord

Порядок, который используется для сравнения элементов.

возвращает

наибольший элемент этого итерируемого набора относительно порядка ord.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A], выполненное методом option2Iterable в scala.Option.
Definition Classes
IterableOnceOps
Исключения

UnsupportedOperationException, если этот итерируемый набор пуст.

def maxBy[B](f: (A) => B)(implicit cmp: math.Ordering[B]): A

Находит первый элемент, который даёт наибольшее значение, измеряемое функцией f.

B

Тип результата функции f.

f

Функция измерения.

cmp

Порядок, используемый для сравнения элементов.

returns

первый элемент этого итерируемого набора с наибольшим значением, измеренным функцией f относительно порядка cmp.

Implicit
Этот член добавлен с помощью неявного преобразования из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps
Exceptions thrown

UnsupportedOperationException, если этот итерируемый набор пуст.

def maxByOption[B](f: (A) => B)(implicit cmp: scala.math.Ordering[B]): Option[A]

Находит первый элемент, который даёт наибольшее значение, измеряемое функцией f.

B

Тип результата функции f.

f

Функция измерения.

cmp

Порядок, используемый для сравнения элементов.

returns

значение Option, содержащее первый элемент этого итерируемого набора с наибольшим значением, измеренным функцией f относительно порядка cmp.

Implicit
Этот член добавлен с помощью неявного преобразования из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

def maxOption[A](implicit ord: scala.math.Ordering[B]): Option[A]

Находит наибольший элемент.

B

Тип, по которому определено упорядочение.

ord

Упорядочение, используемое для сравнения элементов.

returns

значение Option, содержащее наибольший элемент этого итерируемого набора коллекций по отношению к порядку ord.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

def min[B >: A](implicit ord: scala.math.Ordering[B]): A

Находит наименьший элемент.

B

Тип, по которому определено упорядочение.

ord

Упорядочение, используемое для сравнения элементов.

returns

наименьший элемент этого итерируемого набора коллекций по отношению к порядку ord.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps
Исключения

UnsupportedOperationException, если этот итерируемый набор коллекций пустой.

def minBy[B](f: (A) => B)(implicit cmp: scala.math.Ordering[B]): A

Находит первый элемент, который даёт наименьшее значение, измеряемое функцией f.

B

Тип результата функции f.

f

Функция измерения.

cmp

Порядок, используемый для сравнения элементов.

returns

первый элемент этого итерируемого набора с наименьшим значением, измеренным функцией f относительно порядка cmp.

Implicit
Этот член добавляется неявным преобразованием из Some[A] в Iterable[A] при выполнении метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps
Exceptions thrown

UnsupportedOperationException, если этот итерируемый набор пуст.

def minByOption[B](f: (A) => B)(implicit cmp: scala.math.Ordering[B]): Option[A]

Находит первый элемент, который даёт наименьшее значение, измеряемое функцией f.

B

Тип результата функции f.

f

Функция измерения.

cmp

Порядок, используемый для сравнения элементов.

returns

значения в виде объекта Option, содержащего первый элемент этого итерируемого набора с наименьшим значением, измеренным функцией f относительно порядка cmp.

Implicit
Этот член добавляется неявным преобразованием из Some[A] в Iterable[A] при выполнении метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

def minOption[B >: A](implicit ord: scala.math.Ordering[B]): Option[A]

Находит наименьший элемент.

B

Тип, по которому определяется порядок.

ord

Порядок, используемый для сравнения элементов.

returns

значение типа Option, содержащее наименьший элемент этого итерируемого набора относительно порядка ord.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

final def ne(arg0: AnyRef): Boolean

Эквивалентно !(this eq that).

returns

true если аргумент не является ссылкой на объект-получатель; false в противном случае.

Definition Classes
AnyRef

final def nonEmpty: Boolean

Возвращает false, если значение option является None, и true в противном случае.

Это эквивалентно:

option match {
  case Some(_) => true
  case None    => false
}
Definition Classes
Option
Note

Реализовано здесь для избежания неявного преобразования в Iterable.

final def notify(): Unit

Разбуждает единственную нить, ожидающую монитора объекта-получателя.

Definition Classes
AnyRef
Annotations
@native()
Note

не указано SLS как член AnyRef

final def notifyAll(): Unit

Разбуждает все нити, ожидающие монитора объекта-получателя.

Definition Classes
AnyRef
Annotations
@native()
Note

не указано SLS как член AnyRef

final def orElse[B >: A](alternative: => Option[B]): Option[B]

Возвращает этот scala.Option, если он не пустой, в противном случае возвращает результат вычисления alternative.

Это эквивалентно:

option match {
  case Some(x) => Some(x)
  case None    => alternative
}
alternative

выражение по умолчанию.

Definition Classes
Option
Annotations
@inline()

final def orNull[A1 >: A](implicit ev: <:<[Null, A1]): A1

Возвращает значение опции, если она не пустая, или null , если она пустая.

Хотя использование null не рекомендуется, код, написанный для использования scala.Option, часто должен взаимодействовать с кодом, который ожидает и возвращает null.

Это эквивалентно:

option match {
  case Some(x) => x
  case None    => null
}
Definition Classes
Option
Annotations
@inline()
Пример:
    val initialText: Option[String] = getInitialText
    val textField = new JComponent(initialText.orNull,20)

def partition(p: (A) => Boolean): (collection.Iterable[A], collection.Iterable[A])

Пара из элементов, которые удовлетворяют предикату p, и, во-вторых, всех элементов, которые этого не делают. Интересно, потому что разделяет коллекцию на две части.

Представленная здесь реализация по умолчанию требует двух проходов по коллекции. Строгие коллекции имеют переопределённую версию partition в StrictOptimizedIterableOps, которая требует только одного прохода.

Implicit
Этот член добавляется неявным преобразованием из Some[A] в Iterable[A], выполненным методом option2Iterable в scala.Option.
Definition Classes
IterableOps

def partitionMap[A1, A2](f: (A) => Either[A1, A2]): (collection.Iterable[A1], collection.Iterable[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.

Неявный
Этот член добавляется неявным преобразованием из Some[A] вIterable[A] выполняемым методом option2Iterable в scala.Option.
Определяющие классы
IterableOps

def product[B >: A](implicit num: math.Numeric[B]): B

Произведение элементов этого набора.

B

тип результата оператора *.

num

явный параметр, определяющий набор числовых операций, включающий оператор *, используемый для вычисления произведения.

возвращает

произведение всех элементов этого итерируемого набора относительно оператора * в num.

Неявный
Этот член добавляется неявным преобразованием из Some[A] вIterable[A] выполняемым методом option2Iterable в scala.Option.
Определяющие классы
IterableOnceOps

def productElementNames: Iterator[String]

Итератор по именам всех элементов этого произведения.

Определяющие классы
Product

def reduce[B >: A](op: (B, B) => B): B

Уменьшает элементы этого итерируемого набора, используя указанный ассоциативный бинарный оператор.

Порядок выполнения операций над элементами не определен и может быть не детерминированным.

B

Параметр типа для бинарного оператора, надтип A.

op

Бинарный оператор, который должен быть ассоциативным.

returns

Результат применения оператора reduce op между всеми элементами, если итерируемый набор не пустой.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполняемым методом option2Iterable в scala.Option.
Определяющие классы
IterableOnceOps
Исключения

UnsupportedOperationException, если этот итерируемый набор пустой.

def reduceLeft[B >: A](op: (B, A) => B): B

Применяет бинарный оператор ко всем элементам этого итерируемого набора слева направо.

Примечание: не будет завершаться для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.

B

тип результата бинарного оператора.

op

бинарный оператор.

returns

результат вставки op между последовательными элементами этого итерируемого набора, слева направо:

op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)

где x1, ..., xn — элементы этого итерируемого набора.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполняемым методом option2Iterable в scala.Option.
Определяющие классы
IterableOnceOps
Исключения

UnsupportedOperationException, если этот итерируемый набор пустой.

def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]

Необязательно применяет бинарный оператор ко всем элементам этого итерируемого набора, слева направо.

Примечание: не завершается для коллекций бесконечного размера.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.

B

тип результата бинарного оператора.

op

бинарный оператор.

returns

значение Option, содержащее результат reduceLeft(op) , если этот итерируемый набор не пустой, None в противном случае.

Неявный
Этот член добавляется неявным преобразованием из Some[A] в Iterable[A] , выполненное методом option2Iterable в scala.Option.
Определяющие классы
IterableOnceOps

def reduceOption[B >: A](op: (B, B) => B): Option[B]

Сводит элементы этой итерируемой коллекции, если таковые имеются, с помощью указанного ассоциативного бинарного оператора.

Порядок выполнения операций над элементами не определен и может быть не детерминированным.

B

Параметр типа для бинарного оператора, надтип A.

op

Бинарный оператор, который должен быть ассоциативным.

returns

Значение Option, содержащее результат применения оператора reduce op между всеми элементами, если коллекция не пустая, и None в противном случае.

Неявный
Этот член добавляется неявным преобразованием из Some[A] в Iterable[A] , выполненное методом option2Iterable в scala.Option.
Определяющие классы
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 — это элементы этого итерируемого набора.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Классы определения
IterableOnceOps
Исключения

UnsupportedOperationException, если этот итерируемый набор пуст.

def reduceRightOption[B >: A](op: (A, B) => B): Option[B]

Факультативно применяет бинарный оператор ко всем элементам этого итерируемого набора, справа налево.

Примечание: не завершается для наборов бесконечного размера.

Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен или оператор не ассоциативен и не коммутативен.

B

тип результата бинарного оператора.

op

бинарный оператор.

returns

значение опционального типа, содержащее результат reduceRight(op) если этот итерируемый набор не пуст, None в противном случае.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Классы определения
IterableOnceOps

def scan[B >: A](z: B)(op: (B, B) => B): collection.Iterable[B]

Вычисляет сдвиговую сумму элементов коллекции.

Примечание: нейтральный элемент z может применяться более одного раза.

B

тип элементов результирующей коллекции

z

нейтральный элемент для оператора op

op

ассоциативный оператор для сдвига

returns

новая итерируемая коллекция, содержащая сдвиговую сумму элементов в этой итерируемой коллекции

Неявный
Этот член добавляется неявным преобразованием из Some[A] вIterable[A] в методе option2Iterable в scala.Option.
Определяющие классы
IterableOps

def scanLeft[B](z: B)(op: (B, A) => B): collection.Iterable[B]

Создает итерируемую коллекцию, содержащую кумулятивные результаты применения оператора слева направо, включая начальное значение.

Примечание: не завершится для коллекций бесконечного размера.

Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.

B

тип элементов в результирующей коллекции

z

начальное значение

op

бинарный оператор, применяемый к промежуточному результату и элементу

returns

коллекция с промежуточными результатами

Неявный
Этот член добавляется неявным преобразованием из Some[A] вIterable[A] в методе option2Iterable в scala.Option.
Определяющие классы
IterableOps → IterableOnceOps
Примечание

Переиспользование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора неопределенно, может быть изменено и может привести к изменениям в новом итераторе.

def scanRight[B](z: B)(op: (A, B) => B): collection.Iterable[B]

Производит коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.

Примечание: не завершается для коллекций бесконечного размера.

Примечание: может возвращать разные результаты при разных запусках, если только тип базовой коллекции не упорядочен.

Примечание: даже при применении к представлению или ленивой коллекции всегда будет принудительно обрабатывать элементы.

Пример:

List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
B

тип элементов в результирующей коллекции

z

начальное значение

op

бинарный оператор, применяемый к промежуточному результату и элементу

returns

коллекция с промежуточными результатами

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Классы-определения
IterableOps

def sizeCompare(that: collection.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.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Классы-определения
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.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Классы-определения
IterableOps
См. также

sizeIs

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
Неявное
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполненное методом option2Iterable в scala.Option.
Классы определений
IterableOps
Аннотации
@inline()

def slice(from: Int, until: Int): collection.Iterable[A]

Выбирает интервал элементов. Возвращаемый итерируемый набор состоит из всех элементов x, которые удовлетворяют следующему условию:

from <= indexOf(x) < until

Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.

from

наименьший индекс для включения из этого итерируемого набора.

until

наименьший индекс для ИСКЛЮЧЕНИЯ из этого итерируемого набора.

возвращает

итерируемый набор, содержащий элементы, большие или равные индексу from, и до (но не включая) индекса until этого итерируемого набора.

Неявное
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполненное методом option2Iterable в scala.Option.
Классы определений
IterableOps → IterableOnceOps
Примечание

Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может измениться и может привести к изменениям в новом итераторе тоже.

def sliding(size: Int, step: Int): collection.Iterator[collection.Iterable[A]]

Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения на части, как это делается в grouped).

size

количество элементов в группе

step

расстояние между первыми элементами последовательных групп

returns

Итератор, генерирующий итерируемые коллекции размера size, за исключением последнего элемента (который может быть единственным), который будет усечен, если оставшихся элементов для группировки меньше, чем size.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненное методом option2Iterable в scala.Option.
Definition Classes
IterableOps
See also

scala.collection.Iterator, метод sliding

def sliding(size: Int): collection.Iterator[collection.Iterable[A]]

Группирует элементы в блоки фиксированного размера, пропуская «скользящее окно» по ним (в отличие от разбиения на части, как это делается в grouped). Шаг «скользящего окна» установлен в единицу.

size

количество элементов в группе

returns

Итератор, генерирующий итерируемые коллекции размера size, за исключением последнего элемента (который может быть единственным), который будет усечен, если оставшихся элементов для группировки меньше, чем size.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненное методом option2Iterable в scala.Option.
Definition Classes
IterableOps
See also

scala.collection.Iterator, метод sliding

def span(p: (A) => Boolean): (collection.Iterable[A], collection.Iterable[A])

Разделяет эту итерируемую коллекцию на пару префикс/суффикс в соответствии с предикатом.

Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не приводит к побочным эффектам.

Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен.

p

предикат проверки

returns

пара, состоящая из самого длинного префикса этой итерируемой коллекции, элементы которой удовлетворяют p, и остальной части этой итерируемой коллекции.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполненным методом option2Iterable в scala.Option.
Определяющие классы
IterableOps → IterableOnceOps
Примечание

Повторное использование: После вызова этого метода необходимо отказаться от итератора, на котором он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может измениться, и может привести к изменениям в новых итераторах тоже.

def splitAt(n: Int): (collection.Iterable[A], collection.Iterable[A])

Разделяет эту итерируемую коллекцию на пару префикс/суффикс в заданной позиции.

Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).

Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен.

n

позиция разделения.

returns

пара итерируемых коллекций, состоящая из первых n элементов этой итерируемой коллекции и других элементов.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполненным методом option2Iterable в scala.Option.
Определяющие классы
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. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, в то время как обычные Stepper можно преобразовать только в последовательные потоки.

Определение классов
IterableOnce

def sum[B >: A](implicit num: math.Numeric[B]): B

Суммирует элементы этой коллекции.

B

тип результата оператора +.

num

неявный параметр, определяющий набор арифметических операций, включающий оператор +, используемый для формирования суммы.

возвращает

сумму всех элементов этой итерируемой коллекции относительно оператора + в num.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполненного методом option2Iterable в scala.Option.
Определение классов
IterableOnceOps

final def synchronized[T0](arg0: => T0): T0

Определение классов
AnyRef

def tail: collection.Iterable[A]

Остальная часть коллекции без её первого элемента.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполненным методом option2Iterable в scala.Option.
Классы-определения
IterableOps

def tails: collection.Iterator[collection.Iterable[A]]

Итерирует по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения будут результатами последовательных применений tail.

возвращает

итератор по всем хвостам этой итерируемой коллекции

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполненным методом option2Iterable в scala.Option.
Классы-определения
IterableOps
Пример:

    List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)

def take(n: Int): collection.Iterable[A]

Выбирает первые n элементов.

Примечание: результаты могут отличаться при разных запусках, если тип базовой коллекции не упорядочен.

n

количество элементов для взятия из этой итерируемой коллекции.

возвращает

итерируемая коллекция, состоящая только из первых n элементов этой итерируемой коллекции, или же вся итерируемая коллекция, если она содержит меньше n элементов. Если n отрицательное, возвращает пустую итерируемую коллекцию.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполненным методом option2Iterable в scala.Option.
Классы-определения
IterableOps → IterableOnceOps
Примечание

Переиспользование: после вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может измениться, и может привести к изменениям в новом итераторе тоже.

def takeRight(n: Int): collection.Iterable[A]

Выбирает последние n элементов.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

n

количество элементов, которые нужно взять из этой итерируемой коллекции.

возвращает

итерируемую коллекцию, содержащую только последние n элементов этой итерируемой коллекции, или же всю итерируемую коллекцию, если в ней меньше, чем n элементов. Если n отрицательно, возвращает пустую итерируемую коллекцию.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполняемое методом option2Iterable в scala.Option.
Определяющие классы
IterableOps

def takeWhile(p: (A) => Boolean): collection.Iterable[A]

Взять наибольший префикс элементов, удовлетворяющих предикату.

Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.

p

Предикат, используемый для проверки элементов.

возвращает

наибольший префикс этой итерируемой коллекции, элементы которой удовлетворяют предикату p.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполняемое методом option2Iterable в scala.Option.
Определяющие классы
IterableOps → IterableOnceOps

def tapEach[U](f: (A) => U): collection.Iterable[A]

Применяет функцию с побочным эффектом к каждому элементу в этой коллекции. Строгие коллекции применят f к своим элементам немедленно, в то время как ленивые коллекции, такие как Views и LazyLists, применят f только к каждому элементу, когда он будет вычисляться, и каждый раз, когда этот элемент будет вычисляться.

U

тип возвращаемого значения f

f

функция, которая применяется к каждому элементу в этой итерируемой коллекции

возвращает

Такая же логическая коллекция, как эта

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполняемое методом option2Iterable в scala.Option.
Определяющие классы
IterableOps → IterableOnceOps

def to[C1](factory: Factory[A, C1]): C1

При заданном фабрике коллекций factory, преобразуйте эту коллекцию в соответствующее представление для текущего типа элемента A. Примеры использования:

xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]

Неявный
Этот член добавлен с помощью неявного преобразования из Some[A] вIterable[A] выполненного методом option2Iterable в scala.Option.
Определяющие классы
IterableOnceOps

def toArray[B >: A](implicit arg0: ClassTag[B]): Array[B]

Преобразование коллекции в массив.

Неявный
Этот член добавлен с помощью неявного преобразования из Some[A] вIterable[A] выполненного методом option2Iterable в scala.Option.
Определяющие классы
IterableOnceOps

final def toLeft[X](right: => X): Either[A, X]

Возвращает scala.util.Right, содержащий переданный аргумент right, если текущий объект пуст, или scala.util.Left, содержащий значение этого scala.Option, если этот scala.Option не пуст.

Это эквивалентно:

option match {
  case Some(x) => Left(x)
  case None    => Right(right)
}
right

выражение, которое вычисляется и возвращается, если текущий объект пуст

Определяющие классы
Option
Аннотации
@inline()
См. также

toRight

def toList: List[A]

Возвращает список из одного элемента — значения scala.Option, если оно не пустое, или пустой список, если scala.Option пустое.

Это эквивалентно:

option match {
  case Some(x) => List(x)
  case None    => Nil
}
Definition Classes
Option

def toMap[K, V](implicit ev: <:<[A, (K, V)]): Map[K, V]

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
IterableOnceOps

final def toRight[X](left: => X): Either[X, A]

Возвращает scala.util.Left с заданным аргументом left если этот scala.Option пустой, или scala.util.Right содержащий значение этого scala.Option, если он непустой.

Это эквивалентно:

option match {
  case Some(x) => Right(x)
  case None    => Left(left)
}
left

выражение, которое вычисляется и возвращается, если это пустое

Definition Classes
Option
Annotations
@inline()
See also

toLeft

def toString(): String

Преобразует это итерируемое множество в строку.

returns

строковое представление этого множества. По умолчанию эта строка состоит из className этого итерируемого множества, за которой следуют все элементы, разделенные запятыми и заключенные в скобки.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Definition Classes
Iterable → AnyRef → Any

def transpose[B](implicit asIterable: (A) => collection.Iterable[B]): collection.Iterable[collection.Iterable[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.

returns

двухмерное итерируемое множество итерируемых множеств, у которого n-я строка — n-й столбец этого итерируемого множества.

Implicit
Этот член добавлен явным преобразованием из Some[A] в Iterable[A] посредством метода option2Iterable в scala.Option.
Definition Classes
IterableOps
Exceptions thrown

IllegalArgumentException, если все множества в этом итерируемом множестве не имеют одинакового размера.

final def unzip[A1, A2](implicit asPair: <:<[A, (A1, A2)]): (Option[A1], Option[A2])

Преобразует Option пары в Option первого элемента и Option второго элемента.

Это эквивалентно:

option match {
  case Some((x, y)) => (Some(x), Some(y))
  case _            => (None,    None)
}
A1

тип первой половины пары элементов

A2

тип второй половины пары элементов

asPair

явное преобразование, которое утверждает, что тип элемента этого Option — пара.

returns

пара Option, содержащая, соответственно, первую и вторую половину пары элементов этого Option.

Definition Classes
Option

final def unzip3[A1, A2, A3](implicit asTriple: <:<[A, (A1, A2, A3)]): (Option[A1], Option[A2], Option[A3])

Преобразует Option тройки в три Option, по одному на каждый элемент тройки.

Это эквивалентно:

option match {
  case Some((x, y, z)) => (Some(x), Some(y), Some(z))
  case _               => (None,    None,    None)
}
A1

тип первого из трёх элементов в тройке

A2

тип второго из трёх элементов в тройке

A3

тип третьего из трёх элементов в тройке

asTriple

явное преобразование, которое утверждает, что тип элемента этого Option является тройкой.

returns

тройка Option, содержащая, соответственно, первый, второй и третий элементы из тройки элементов этого Option.

Definition Classes
Option

val value: A

def view: View[A]

Представление над элементами этого набора.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполняемое методом option2Iterable в scala.Option.
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

Описание классов
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException]) @native()

final def withFilter(p: (A) => Boolean): WithFilter

Необходим для предотвращения неявного преобразования scala.Option в scala.collection.Iterable в for выражениях.

Описание классов
Option
Аннотации
@inline()

final def zip[A1 >: A, B](that: Option[B]): Option[(A1, B)]

Возвращает scala.Some, образованный из данного объекта и другого объекта Option путём объединения соответствующих элементов в пару. Если один из двух объектов Option пуст, возвращается None.

Это эквивалентно:

(option1, option2) match {
  case (Some(x), Some(y)) => Some((x, y))
  case _                  => None
}
that

объект Option, который будет объединяться

Описание классов
Option
Пример:
    // Returns Some(("foo", "bar")) because both options are nonempty.
    Some("foo") zip Some("bar")
    
    // Returns None because `that` option is empty.
    Some("foo") zip None
    
    // Returns None because `this` option is empty.
    None zip Some("bar")

def zipAll[A1 >: A, B](that: collection.Iterable[B], thisElem: A1, thatElem: B): collection.Iterable[(A1, B)]

Возвращает итерируемую коллекцию, сформированную из этой итерируемой коллекции и другой итерируемой коллекции, объединяя соответствующие элементы парами. Если одна из двух коллекций короче другой, для расширения более короткой коллекции до длины более длинной используются заполнители.

that

итерируемый объект, предоставляющий вторую половину каждой пары результатов

thisElem

элемент, используемый для заполнения результата, если эта итерируемая коллекция короче that.

thatElem

элемент, используемый для заполнения результата, если that короче этой итерируемой коллекции.

returns

новая коллекция типа That, содержащая пары, состоящие из соответствующих элементов этой итерируемой коллекции и that. Длина возвращаемой коллекции равна максимальной длине этой итерируемой коллекции и that. Если эта итерируемая коллекция короче that, значения thisElem используются для дополнения результата. Если that короче этой итерируемой коллекции, значения thatElem используются для дополнения результата.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] при выполнении метода option2Iterable в scala.Option.
Определение классов
IterableOps

def zipWithIndex: collection.Iterable[(A, Int)]

Объединяет эту итерируемую коллекцию с ее индексами.

returns

Новая итерируемая коллекция, содержащая пары, состоящие из всех элементов этой итерируемой коллекции, соединенных со своими индексами. Индексы начинаются с 0.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] при выполнении метода option2Iterable в scala.Option.
Определение классов
IterableOps → IterableOnceOps
Пример:

    List("a", "b", "c").zipWithIndex == List(("a", 0), ("b", 1), ("c", 2))

Примечание

Повторное использование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе также.

Члены-значения неявного затенения

def collect[B](pf: PartialFunction[A, B]): collection.Iterable[B]

Создаёт новую коллекцию итерируемых элементов, применяя частичную функцию ко всем элементам этой коллекции, для которых функция определена.

B

тип элементов возвращаемой коллекции.

pf

частичная функция, которая фильтрует и отображает коллекцию.

returns

новая итерируемая коллекция, полученная путём применения данной частичной функции pf к каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.

Неявный
Этот член добавлен путём неявного преобразования из Some[A] в Iterable[A], выполненное методом option2Iterable в scala.Option.
Затенение
Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать явное указание типа:
(some: Iterable[A]).collect(pf)
Классы определения
IterableOps → IterableOnceOps
Примечание

Переиспользование: после вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.

def count(p: (A) => Boolean): Int

Подсчитывает количество элементов в итерируемой коллекции, которые удовлетворяют предикату.

p

предикат, используемый для проверки элементов.

returns

количество элементов, удовлетворяющих предикату p.

Неявный
Этот член добавлен путём неявного преобразования из Some[A] в Iterable[A], выполненное методом option2Iterable в scala.Option.
Затенение
Этот неявно унаследованный член является неоднозначным. Один или несколько неявно унаследованных членов имеют аналогичные подписи, поэтому вызов этого члена может привести к ошибке компилятора, связанной с неоднозначным неявным преобразованием.
Для доступа к этому члену можно использовать явное указание типа:
(some: Iterable[A]).count(p)
Классы определения
IterableOnceOps

def exists(p: (A) => Boolean): Boolean

Проверяет, выполняется ли предикат хотя бы для одного элемента этого итерируемого набора.

Примечание: может не завершиться для наборов бесконечного размера.

p

предикат, используемый для проверки элементов.

returns

true если данный предикат p выполняется хотя бы для одного элемента этого итерируемого набора, в противном случае false

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Shadowing
Этот неявно унаследованный член скрыт одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать явное указание типа:
(some: Iterable[A]).exists(p)
Definition Classes
IterableOnceOps

def filter(pred: (A) => Boolean): collection.Iterable[A]

Выбирает все элементы этого итерируемого набора, которые удовлетворяют предикату.

returns

новый итератор, состоящий из всех элементов этого итерируемого набора, удовлетворяющих заданному предикату p. Порядок элементов сохраняется.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Shadowing
Этот неявно унаследованный член скрыт одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать явное указание типа:
(some: Iterable[A]).filter(pred)
Definition Classes
IterableOps → IterableOnceOps

def filterNot(pred: (A) => Boolean): collection.Iterable[A]

Выбирает все элементы этого итерируемого набора, которые не удовлетворяют предикату.

pred

предикат, используемый для проверки элементов.

returns

новый итерируемый набор, состоящий из всех элементов этого итерируемого набора, которые не удовлетворяют заданному предикату pred. Их порядок может не сохраняться.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Перекрытие
Этот неявный унаследованный член перекрывается одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).filterNot(pred)
Определяющие классы
IterableOps → IterableOnceOps

def find(p: (A) => Boolean): Option[A]

Находит первый элемент итерируемого набора, удовлетворяющий предикату, если таковой существует.

Примечание: может не завершиться для наборов бесконечного размера.

Примечание: может возвращать разные результаты при разных запусках, если только тип базового набора не является упорядоченным.

p

предикат, используемый для проверки элементов.

returns

значение типа option, содержащее первый элемент в итерируемом наборе, который удовлетворяет p, или None если такового не существует.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Перекрытие
Этот неявный унаследованный член является неоднозначным. Один или несколько неявных унаследованных членов имеют аналогичные сигнатуры, поэтому вызов этого члена может привести к ошибке компилятора с неоднозначным неявным преобразованием.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).find(p)
Определяющие классы
IterableOnceOps

def flatMap[B](f: (A) => collection.IterableOnce[B]): collection.Iterable[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 к каждому элементу этого итерируемого набора и конкатенации результатов.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] в методе option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).flatMap(f)
Определяющие классы
IterableOps → IterableOnceOps
Примечание

Переиспользование: после вызова этого метода итератор, на котором он был вызван, следует удалить, а использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.

def flatten[B](implicit asIterable: (A) => collection.IterableOnce[B]): collection.Iterable[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

новый итерируемый набор, полученный путём конкатенации всех наборов элементов.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] в методе option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).flatten(asIterable)
Определяющие классы
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 если этот итерируемый набор пуст.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Shadowing
Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типов:
(some: Iterable[A]).fold(z)(op)
Definition Classes
IterableOnceOps

def forall(p: (A) => Boolean): Boolean

Проверяет, выполняется ли предикат для всех элементов этого итерируемого набора.

Примечание: может не завершаться для коллекций бесконечного размера.

p

предикат, используемый для проверки элементов.

returns

true если этот итерируемый набор пуст или указанный предикат p выполняется для всех элементов этого итерируемого набора, в противном случае false.

Implicit
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Shadowing
Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типов:
(some: Iterable[A]).forall(p)
Definition Classes
IterableOnceOps

def foreach[U](f: (A) => U): Unit

Применяет f к каждому элементу для его побочных эффектов. Примечание: параметр [U] необходим для помощи в инференции типов scalac.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненным методом option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член затеневается одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать явное указание типа:
(some: Iterable[A]).foreach(f)
Классы определений
IterableOnceOps

def isEmpty: Boolean

Проверяет, является ли итерируемое множество пустым.

Примечание: Реализации в подклассах, которые не являются многократно проходимыми, должны позаботиться о том, чтобы не потреблять какие-либо элементы при вызове isEmpty.

возвращает

true если итерируемое множество не содержит элементов, false в противном случае.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненным методом option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член затеневается одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать явное указание типа:
(some: Iterable[A]).isEmpty
Классы определений
IterableOnceOps

def iterator: collection.Iterator[A]

Итератор может быть использован только один раз

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненным методом option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член затеневается одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать явное указание типа:
(some: Iterable[A]).iterator
Классы определений
IterableOnce

def knownSize: Int

возвращает

Количество элементов в этом итерируемом наборе, если его можно вычислить без затрат, в противном случае -1. «Без затрат» обычно означает: без обхода коллекции.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Перекрытие
Этот неявный наследуемый член перекрывается одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).knownSize
Определяющие классы
IterableOnce

def map[B](f: (A) => B): collection.Iterable[B]

Создаёт новую итерируемую коллекцию, применяя функцию ко всем элементам этой итерируемой коллекции.

B

тип элементов возвращаемой итерируемой коллекции.

f

функция, применяемая к каждому элементу.

возвращает

новая итерируемая коллекция, полученная путём применения заданной функции f к каждому элементу этой итерируемой коллекции и сбора результатов.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Перекрытие
Этот неявный наследуемый член перекрывается одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).map(f)
Определяющие классы
IterableOps → IterableOnceOps
Примечание

Повторное использование: После вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.

final def mkString: String

Отображает все элементы этого итерируемого набора в строке.

Делегирует вызов addString, который можно переопределить.

возвращает

строковое представление этого итерируемого набора. В результирующей строке строковые представления (с учётом метода toString) всех элементов этого итерируемого набора следуют друг за другом без разделителя.

Неявный
Этот член добавлен с помощью неявного преобразования из Some[A] в Iterable[A] через метод option2Iterable в scala.Option.
Перекрытие
Этот неявно унаследованный член неоднозначен. Один или несколько неявно унаследованных членов имеют аналогичные сигнатуры, поэтому вызов этого члена может привести к ошибке компилятора по поводу неоднозначного неявного преобразования.
Для доступа к этому члену можно использовать приведение типов:
(some: Iterable[A]).mkString
Определяющие классы
IterableOnceOps
Аннотации
@inline()

final def mkString(sep: String): String

Отображает все элементы этого итерируемого набора в строке с использованием разделителя.

Делегирует вызов addString, который можно переопределить.

sep

строка-разделитель.

возвращает

строковое представление этого итерируемого набора. В результирующей строке строковые представления (с учётом метода toString) всех элементов этого итерируемого набора разделены строкой sep.

Неявный
Этот член добавлен с помощью неявного преобразования из Some[A] в Iterable[A] через метод option2Iterable в scala.Option.
Перекрытие
Этот неявно унаследованный член неоднозначен. Один или несколько неявно унаследованных членов имеют аналогичные сигнатуры, поэтому вызов этого члена может привести к ошибке компилятора по поводу неоднозначного неявного преобразования.
Для доступа к этому члену можно использовать приведение типов:
(some: Iterable[A]).mkString(sep)
Определяющие классы
IterableOnceOps
Аннотации
@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.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] посредством метода option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член является неоднозначным. Один или несколько неявных унаследованных членов имеют аналогичные сигнатуры, поэтому вызов этого члена может привести к ошибке компилятора из-за неоднозначного неявного преобразования.
Для доступа к этому члену можно использовать привязку типа:
(some: Iterable[A]).mkString(start, sep, end)
Классы-определения
IterableOnceOps
Пример:

    List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"

def nonEmpty: Boolean

Проверяет, пусто ли итерируемый набор.

returns

true если итерируемый набор содержит по крайней мере один элемент, false в противном случае.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] посредством метода option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член затеняется одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать привязку типа:
(some: Iterable[A]).nonEmpty
Классы-определения
IterableOnceOps
Аннотации
@deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")

def size: Int

Размер этого итерируемого набора.

Примечание: не завершится для наборов бесконечного размера.

возвращает

количество элементов в этом итерируемом наборе.

Неявный
Этот член добавлен неявным преобразованием из Some[A] вIterable[A] выполняемым методом option2Iterable в scala.Option.
Перекрытие
Этот неявный унаследованный член является неоднозначным. Один или несколько неявных унаследованных членов имеют похожие сигнатуры, поэтому вызов этого члена может привести к ошибке компилятора с неоднозначным неявным преобразованием.
Для доступа к этому члену вы можете использовать описание типа:
(some: Iterable[A]).size
Определяющие классы
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. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, конвертеры в scala.jdk.StreamConverters позволяют создавать параллельные потоки, в то время как обычные Stepper могут быть преобразованы только в последовательные потоки.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполненное методом option2Iterable в scala.Option.
Перекрытие
Этот неявный унаследованный член перекрывается одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать привязку типа:
(some: Iterable[A]).stepper(shape)
Классы-определения
IterableOnce

final def toBuffer[B >: A]: Buffer[B]

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] выполненное методом option2Iterable в scala.Option.
Перекрытие
Этот неявный унаследованный член неоднозначен. Один или несколько неявных унаследованных членов имеют аналогичные сигнатуры, поэтому вызов этого члена может вызвать ошибку компилятора неоднозначного неявного преобразования.
Для доступа к этому члену можно использовать привязку типа:
(some: Iterable[A]).toBuffer
Классы-определения
IterableOnceOps
Аннотации
@inline()

def toIndexedSeq: collection.immutable.IndexedSeq[A]

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Затенение
Этот неявно унаследованный член является неоднозначным. Один или несколько неявно унаследованных членов имеют похожие сигнатуры, поэтому вызов этого члена может привести к ошибке компиляции, связанной с неоднозначностью неявного преобразования.
Для доступа к этому члену можно использовать привязку типа:
(some: Iterable[A]).toIndexedSeq
Определяющие классы
IterableOnceOps

final def toIterable: collection.Iterable[A]

возвращает

Это коллекцию в виде Iterable[A]. Новый объект коллекции не будет создан, если this уже является Iterable[A].

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Затенение
Этот неявно унаследованный член является неоднозначным. Один или несколько неявно унаследованных членов имеют похожие сигнатуры, поэтому вызов этого члена может привести к ошибке компиляции, связанной с неоднозначностью неявного преобразования.
Для доступа к этому члену можно использовать привязку типа:
(some: Iterable[A]).toIterable
Определяющие классы
Iterable → IterableOps

def toList: collection.immutable.List[A]

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Затенение
Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать привязку типа:
(some: Iterable[A]).toList
Определяющие классы
IterableOnceOps

def toSeq: collection.immutable.Seq[A]

возвращает

Это коллекция в виде Seq[A]. Это эквивалентно to(Seq), но может быть быстрее.

Неявный
Этот член добавлен неявно при преобразовании из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Затенение
Этот неявно унаследованный член неоднозначен. Один или несколько неявно унаследованных членов имеют аналогичные сигнатуры, поэтому вызов этого члена может привести к ошибке компилятора, связанной с неоднозначным неявным преобразованием.
Для доступа к этому члену можно использовать приведение типов:
(some: Iterable[A]).toSeq
Определяющие классы
IterableOnceOps

def toSet[B >: A]: Set[B]

Неявный
Этот член добавлен неявно при преобразовании из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Затенение
Этот неявно унаследованный член неоднозначен. Один или несколько неявно унаследованных членов имеют аналогичные сигнатуры, поэтому вызов этого члена может привести к ошибке компилятора, связанной с неоднозначным неявным преобразованием.
Для доступа к этому члену можно использовать приведение типов:
(some: Iterable[A]).toSet
Определяющие классы
IterableOnceOps

def toVector: collection.immutable.Vector[A]

Неявный
Этот член добавлен неявно при преобразовании из Some[A] в Iterable[A] с помощью метода option2Iterable в scala.Option.
Затенение
Этот неявно унаследованный член неоднозначен. Один или несколько неявно унаследованных членов имеют аналогичные сигнатуры, поэтому вызов этого члена может привести к ошибке компилятора, связанной с неоднозначным неявным преобразованием.
Для доступа к этому члену можно использовать приведение типов:
(some: Iterable[A]).toVector
Определяющие классы
IterableOnceOps

def unzip[A1, A2](implicit asPair: (A) => (A1, A2)): (collection.Iterable[A1], collection.Iterable[A2])

Преобразует это итерируемое множество пар в два множества первой и второй половины каждой пары.

val xs = `Iterable`(
           (1, "one"),
           (2, "two"),
           (3, "three")).unzip
// xs == (`Iterable`(1, 2, 3),
//        `Iterable`(one, two, three))
A1

тип первой половины пар элементов

A2

тип второй половины пар элементов

asPair

явное преобразование, которое утверждает, что тип элементов этого итерируемого множества является парой.

returns

пара итерируемых множеств, содержащая первую и, соответственно, вторую половину каждой пары элементов этого итерируемого множества.

Implicit
Этот член добавлен явным преобразованием из Some[A] вIterable[A] с помощью метода option2Iterable в scala.Option.
Shadowing
Этот неявно унаследованный член затеняется одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).unzip(asPair)
Definition Classes
IterableOps

def unzip3[A1, A2, A3](implicit asTriple: (A) => (A1, A2, A3)): (collection.Iterable[A1], collection.Iterable[A2], collection.Iterable[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

тройку итерируемых наборов, содержащих первый, второй и соответственно третий член каждой тройки элементов этого итерируемого набора.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненное методом option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).unzip3(asTriple)
Определяющие классы
IterableOps

def withFilter(p: (A) => Boolean): collection.WithFilter[A, collection.Iterable]

Создаёт нестрогий фильтр этого итерируемого набора.

Примечание: разница между c filter p и c withFilter p заключается в том, что первый создаёт новый набор, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.

Примечание: может возвращать разные результаты при разных запусках, если только тип базового набора не является упорядоченным.

p

предикат, используемый для проверки элементов.

returns

объект класса WithFilter, который поддерживает map, flatMap, foreach, и withFilter операции. Все эти операции применяются к тем элементам этого итерируемого набора, которые удовлетворяют предикату p.

Неявный
Этот член добавлен неявным преобразованием из Some[A] в Iterable[A], выполненное методом option2Iterable в scala.Option.
Затенение
Этот неявный унаследованный член затенён одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать приведение типа:
(some: Iterable[A]).withFilter(p)
Определяющие классы
IterableOps

def zip[B](that: collection.IterableOnce[B]): collection.Iterable[(A, B)]

Возвращает итерируемую коллекцию, сформированную из этой итерируемой коллекции и другой итерируемой коллекции путем объединения соответствующих элементов парами. Если одна из двух коллекций длиннее другой, её оставшиеся элементы игнорируются.

B

тип второй половины возвращаемых пар

that

Итерируемый объект, предоставляющий вторую половину каждой пары результата

returns

новая итерируемая коллекция, содержащая пары, состоящие из соответствующих элементов этой итерируемой коллекции и that. Длина возвращаемой коллекции — это минимум длин этой итерируемой коллекции и that.

Неявный
Этот член добавлен в результате неявного преобразования из Some[A] в Iterable[A] при выполнении метода option2Iterable в scala.Option.
Перекрытие
Этот неявно унаследованный член перекрывается одним или несколькими членами в этом классе.
Для доступа к этому члену можно использовать привязку типа:
(some: Iterable[A]).zip(that)
Определяющие классы
IterableOps

© 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/Some.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API