Spec-Zone.ru › Scala 2.12 Library

Объект scala.collection.immutable.Nil

объект Nil extends List[Nothing] with Product with Serializable

Пустой список.

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

2.8

Линейные надтипы

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

класс WithFilter extends FilterMonadic[A, Repr]

Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.

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

тип Self = List[Nothing]

Тип, реализующий этот обход

Атрибуты
protected[this]
Определяющие классы
TraversableLike

Члены-значения

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

возвращает

true если !(this == that), иначе false.

Определяющие классы
AnyRef → Any

final def ##(): Int

Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращается значение хеша, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## будет производить одинаковое значение хеша для каждого из них. Для null возвращает хешкод, где null.hashCode выбрасывает NullPointerException.

возвращает

значение хеша, согласованное с ==

Определяющие классы
AnyRef → Any

def ++[B >: Nothing, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[List[Nothing], B, That]): That

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

B

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

That

класс возвращаемой коллекции. В стандартной библиотеке конфигурации That всегда List[B], потому что неявный параметр типа CanBuildFrom[List, B, That] определен в объекте List.

that

объект перечисления для добавления.

bf

неявное значение класса CanBuildFrom, которое определяет класс результата That из текущего типа представления Repr и нового типа элемента B. Обычно это значение canBuildFrom, определенное в объекте List.

возвращает

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

Определяющие классы
List → TraversableLike → GenTraversableLike

def ++:[B >: Nothing, That](that: collection.Traversable[B])(implicit bf: CanBuildFrom[List[Nothing], B, That]): That

Как и ++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.

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

Пример:

scala> val x = List(1)
x: List[Int] = List(1)

scala> val y = LinkedList(2)
y: scala.collection.mutable.LinkedList[Int] = LinkedList(2)

scala> val z = x ++: y
z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)

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

Поскольку у TraversableOnce нет метода ++, нужно реализовать его напрямую, но Traversable и ниже могут использовать этот перегруз.

B

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

That

класс возвращаемой коллекции. Где возможно, That — тот же класс, что и текущий класс коллекции Repr, но это зависит от того, является ли тип элемента B допустимым для этого класса, что означает, что найден неявный экземпляр типа CanBuildFrom[Repr, B, That].

that

объект перечисления для добавления.

bf

неявное значение класса CanBuildFrom, которое определяет класс результата That из текущего типа представления Repr и нового типа элемента B.

возвращает

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

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

def ++:[B](that: TraversableOnce[B]): List[B]

[use case]

Как и ++, возвращает новую коллекцию, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда.

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

Пример:

scala> val x = List(1)
x: List[Int] = List(1)

scala> val y = LinkedList(2)
y: scala.collection.mutable.LinkedList[Int] = LinkedList(2)

scala> val z = x ++: y
z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
B

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

that

объект перечисления для добавления.

возвращает

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

Определяющие классы
TraversableLike
Полная сигнатура

def +:(elem: A): List[A]

[use case]

Копия списка с добавленным элементом в начало.

Обратите внимание, что операторы с окончанием двоеточием являются правоассоциативными (см. пример). Мемоника для +: против :+: двоеточие идёт со стороны коллекции.

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

Пример:

scala> val x = List(1)
x: List[Int] = List(1)

scala> val y = 2 +: x
y: List[Int] = List(2, 1)

scala> println(x)
List(1)
elem

элемент, добавляемый в начало

возвращает

новый список, состоящий из elem и всех элементов этого списка.

Определяющие классы
List → SeqLike → GenSeqLike
Полная сигнатура

def /:[B](z: B)(op: (B, Nothing) ⇒ B): B

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

Примечание: /: — это альтернативная синтаксическая конструкция для foldLeft; z /: xs — это то же самое, что и xs foldLeft z.

Примеры:

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

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = (5 /: a)(_+_)
b: Int = 15

scala> val c = (5 /: a)((x,y) => x + y)
c: Int = 15

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

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

B

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

z

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

op

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

returns

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

op(...op(op(z, x_1), x_2), ..., x_n)

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

Definition Classes
TraversableOnce → GenTraversableOnce

def :+(elem: A): List[A]

[use case]

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

Мемоническая подсказка для +: против :+: знак ДВОЕТОЧИЯ ставится со стороны КОЛлекции.

Пример:

scala> val a = List(1)
a: List[Int] = List(1)

scala> val b = a :+ 2
b: List[Int] = List(1, 2)

scala> println(a)
List(1)
elem

добавляемый элемент

returns

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

Definition Classes
SeqLike → GenSeqLike
Полная подпись

def ::(x: Nothing): List[Nothing]

[use case]

Добавляет элемент в начало этого списка.

Пример:

1 :: List(2, 3) = List(2, 3).::(1) = List(1, 2, 3)
x

элемент для добавления в начало.

returns

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

Definition Classes
List
Полная подпись

def :::(prefix: List[Nothing]): List[Nothing]

[use case]

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

Пример:

List(1, 2) ::: List(3, 4) = List(3, 4).:::(List(1, 2)) = List(1, 2, 3, 4)
prefix

Элементы списка для добавления в начало.

returns

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

Definition Classes
List
Полная подпись

def :\[B](z: B)(op: (Nothing, B) ⇒ B): B

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

Примечание: :\ — это альтернативная синтаксическая конструкция для foldRight; xs :\ z — это то же самое, что и xs foldRight z.

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

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

Примеры:

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

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = (a :\ 5)(_+_)
b: Int = 15

scala> val c = (a :\ 5)((x,y) => x + y)
c: Int = 15
B

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

z

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

op

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

returns

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

op(x_1, op(x_2, ... op(x_n, z)...))

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

Definition Classes
TraversableOnce → GenTraversableOnce

final def ==(arg0: Any): Boolean

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

returns

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

Definition Classes
AnyRef → Any

def addString(b: StringBuilder): StringBuilder

Добавляет все элементы этого перебираемого объекта или итератора в строковый буфер. Записываемый текст состоит из строковых представлений (относительно метода toString) всех элементов этого перебираемого объекта или итератора без разделительной строки.

Пример:

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = new StringBuilder()
b: StringBuilder =

scala> val h = a.addString(b)
h: StringBuilder = 1234
b

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

returns

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

Definition Classes
TraversableOnce

def addString(b: StringBuilder, sep: String): StringBuilder

Добавляет все элементы этого итерируемого объекта или итератора в строку-построитель с использованием разделительной строки. Записанный текст состоит из строковых представлений (согласно методу toString) всех элементов этого итерируемого объекта или итератора, разделенных строкой sep.

Пример:

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = new StringBuilder()
b: StringBuilder =

scala> a.addString(b, ", ")
res0: StringBuilder = 1, 2, 3, 4
b

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

sep

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

returns

строка-построитель b, в которую были добавлены элементы.

Definition Classes
TraversableOnce

def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder

Добавляет все элементы этого итерируемого объекта или итератора в строку-построитель, используя начальную, конечную и разделительные строки. Записанный текст начинается со строки start и заканчивается строкой end. Внутри строковые представления (согласно методу toString) всех элементов этого итерируемого объекта или итератора разделяются строкой sep.

Пример:

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)

scala> val b = new StringBuilder()
b: StringBuilder =

scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
b

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

start

начальная строка.

sep

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

end

конечная строка.

returns

строка-построитель b, в которую были добавлены элементы.

Definition Classes
TraversableOnce

def aggregate[B](z: ⇒ B)(seqop: (B, Nothing) ⇒ B, combop: (B, B) ⇒ B): B

Агрегирует результаты применения оператора к последующим элементам.

Это более общий вариант fold и reduce . Он похож на foldLeft, поскольку не требует, чтобы результат был супертипом типа элемента. Кроме того, он позволяет обрабатывать параллельные коллекции частями, а затем комбинировать промежуточные результаты.

aggregate разбивает итерируемый объект или итератор на части и обрабатывает каждую часть, последовательно применяя seqop, начиная с z (как foldLeft). Затем эти промежуточные результаты объединяются с помощью combop (как fold). Реализация этой операции может работать с произвольным количеством частей коллекции (даже 1), поэтому combop может вызываться произвольное количество раз (даже 0).

Например, рассмотрим суммирование целых значений в списке символов. Начальное значение для суммы - 0. Во-первых, seqop преобразует каждый символ ввода в целое число и добавляет его к сумме (части). Затем combop просто суммирует промежуточные результаты частей:

List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
B

тип накапливаемых результатов

z

начальное значение для накопленного результата части - обычно это нейтральный элемент для оператора seqop (например, Nil для конкатенации списков или 0 для суммирования) и может быть вычислено более одного раза

seqop

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

combop

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

Definition Classes
TraversableOnce → GenTraversableOnce

def andThen[C](k: (Nothing) ⇒ C): PartialFunction[Int, C]

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

C

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

k

функция преобразования

returns

частичная функция с тем же областью определения, что и эта частичная функция, которая отображает аргументы x в k(this(x)).

Definition Classes
PartialFunction → Function1

def apply(n: Int): Nothing

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

returns

элемент этой последовательности по индексу idx, где 0 обозначает первый элемент.

Definition Classes
LinearSeqOptimized → SeqLike → GenSeqLike
Exceptions thrown

IndexOutOfBoundsException, если idx не удовлетворяет 0 <= idx < length.

def applyOrElse[A1 <: Int, B1 >: Nothing](x: A1, default: (A1) ⇒ B1): B1

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

Обратите внимание, что выражение pf.applyOrElse(x, default) эквивалентно

if(pf isDefinedAt x) pf(x) else default(x)

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

    комбинирование частичных функций в цепочки orElse/andThen не приводит к чрезмерному вычислению apply/isDefinedAt lift и unlift не вычисляют исходные функции дважды при каждом вызове runWith позволяет эффективно комбинировать частичные функции в стиле императива с условными действиями

Для нелитеральных классов частичных функций с ненулевой реализацией метода isDefinedAt рекомендуется переопределить applyOrElse с пользовательской реализацией, которая избегает двойного вычисления isDefinedAt. Это может привести к лучшей производительности и более предсказуемому поведению в отношении побочных эффектов.

x

аргумент функции

default

функция по умолчанию

returns

результат применения этой функции или функции по умолчанию.

Definition Classes
PartialFunction
Since

2.10

final def asInstanceOf[T0]: T0

Преобразует текущий объект в тип T0.

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

returns

текущий объект.

Definition Classes
Any
Исключения

ClassCastException если текущий объект не является экземпляром типа T0.

def canEqual(that: Any): Boolean

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

that

Объект, с которым эта коллекция должна быть сравнена

returns

true, если эта коллекция может быть равна that, false в противном случае. Тест учитывает только типы объектов во время выполнения, но игнорирует их элементы.

Definition Classes
IterableLike → Equals

def clone(): AnyRef

Создает копию текущего объекта.

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

returns

копия текущего объекта.

Attributes
protected[lang]
Definition Classes
AnyRef
Annotations
@throws( ... ) @native()
Примечание

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

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

[use case]

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

B

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

pf

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

returns

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

Definition Classes
List → TraversableLike → GenTraversableLike
Полная подпись

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

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

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

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

pf

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

returns

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

Definition Classes
TraversableOnce
Пример:

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

def combinations(n: Int): Iterator[List[Nothing]]

Итерируется по комбинациям. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке. Таким образом, "xy" и "yy" — это комбинации длины 2 последовательности "xyy", но "yx" таковой не является. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращена только одна. Какой из трех способов будет выбран, является деталью реализации, которая не определена.

Например, "xyyy" имеет три различных способа сгенерировать "xy", в зависимости от того, какой первый, второй или третий "y" выбран. Однако, поскольку все они идентичны, будет выбран только один. Какой из трех будет выбран, является реализационной деталью, которая не определена.

returns

Итератор, который проходит по возможным n-элементным комбинациям этой последовательности.

Definition Classes
SeqLike
Пример:

    "abbbc".combinations(2) = Iterator(ab, ac, bb, bc)

def companion: GenericCompanion[List]

Объект-компаньон фабрики, который создаёт экземпляры класса List. (или его Iterable суперкласс, если класс List не является Seq.)

Definition Classes
List → LinearSeq → LinearSeq → Seq → Iterable → Traversable → Seq → GenSeq → Iterable → GenIterable → Traversable → GenTraversable → GenericTraversableTemplate

def compose[A](g: (A) ⇒ Int): (A) ⇒ Nothing

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

A

тип, к которому может быть применена функция g

g

функция A => T1

returns

новая функция f такая, что f(x) == apply(g(x))

Definition Classes
Function1
Annotations
@unspecialized()

def contains[A1 >: Nothing](elem: A1): Boolean

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

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

elem

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

returns

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

Definition Classes
LinearSeqOptimized → SeqLike

def containsSlice[B](that: GenSeq[B]): Boolean

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

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

that

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

returns

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

Definition Classes
SeqLike

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

[use case]

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

xs

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

start

индекс начала.

len

максимальное количество элементов для копирования.

Definition Classes
IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
Полная подпись

def copyToArray(xs: Array[A]): Unit

[use case]

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

xs

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

Definition Classes
TraversableOnce → GenTraversableOnce
Полная подпись

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

[use case]

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

xs

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

start

индекс начала.

Definition Classes
TraversableOnce → GenTraversableOnce
Полная подпись

def copyToBuffer[B >: Nothing](dest: Buffer[B]): Unit

Копирует все элементы этого перебираемого объекта или итератора в буфер.

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

dest

Буфер, в который копируются элементы.

Definition Classes
TraversableOnce

final def corresponds[B](that: GenSeq[B])(p: (Nothing, B) ⇒ Boolean): Boolean

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

B

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

that

другая последовательность

p

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

returns

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

Definition Classes
LinearSeqLike → SeqLike → GenSeqLike
Annotations
@tailrec()

def count(p: (Nothing) ⇒ Boolean): Int

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

p

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def diff(that: collection.Seq[Nothing]): List[Nothing]

[use case]

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

that

последовательность элементов для удаления

returns

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

Definition Classes
SeqLike → GenSeqLike
Полная подпись

def distinct: List[Nothing]

Создает новую последовательность из этой последовательности без дублирующих элементов.

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

returns

Новая последовательность, которая содержит первое вхождение каждого элемента этой последовательности.

Definition Classes
SeqLike → GenSeqLike

def drop(n: Int): List[Nothing]

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

n

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

returns

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

Definition Classes
List → LinearSeqOptimized → IterableLike → TraversableLike → GenTraversableLike

def dropRight(n: Int): List[Nothing]

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

n

Количество элементов для взятия

returns

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

Definition Classes
LinearSeqOptimized → IterableLike

final def dropWhile(p: (Nothing) ⇒ Boolean): List[Nothing]

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

returns

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

Definition Classes
List → TraversableLike → GenTraversableLike
Annotations
@inline()

def endsWith[B](that: GenSeq[B]): Boolean

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

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

that

тестируемая последовательность

returns

true , если эта последовательность имеет that в качестве суффикса, false иначе.

Definition Classes
SeqLike → GenSeqLike

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).

Метод eq реализует отношение эквивалентности отношение эквивалентности для не-null экземпляров AnyRef, и имеет три дополнительных свойства:

    Он согласован: для любых не-null экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-null экземпляра x типа AnyRef, вызовы x.eq(null) и null.eq(x) возвращают false. null.eq(null) возвращает true.

При переопределении методов equals или hashCode важно обеспечить согласованность их поведения с равенством ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковое хэшкодирование (o1.hashCode == o2.hashCode).

возвращает

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

Классы-определения
AnyRef

def equals(that: Any): Boolean

Метод equals для произвольных последовательностей. Сравнивает эту последовательность с другим объектом.

that

Объект для сравнения с последовательностью

возвращает

true если that является последовательностью, имеющей те же элементы, что и эта последовательность в том же порядке, false в противном случае

Классы-определения
Nil → GenSeqLike → Equals → AnyRef → Any

def exists(p: (Nothing) ⇒ Boolean): Boolean

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

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

p

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

возвращает

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

Классы-определения
LinearSeqOptimized → IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

def filter(p: (Nothing) ⇒ Boolean): List[Nothing]

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

p

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

возвращает

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

Классы-определения
TraversableLike → GenTraversableLike

def filterNot(p: (Nothing) ⇒ Boolean): List[Nothing]

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

p

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

возвращает

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

Классы-определения
TraversableLike → GenTraversableLike

def finalize(): Unit

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

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

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

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

def find(p: (Nothing) ⇒ Boolean): Option[Nothing]

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

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

p

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

возвращает

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

Классы-определения
LinearSeqOptimized → IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

final def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): List[B]

[use case]

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

Например:

def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")

Тип результирующей коллекции определяется статическим типом списка. Это может иногда приводить к неожиданным результатам. Например:

// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)

// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap (word => word.toSeq)

// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)

// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
B

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

f

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

returns

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

Definition Classes
Список → TraversableLike → GenTraversableLike → FilterMonadic
Полная подпись

def flatten[B]: Список[B]

[use case]

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

Тип результирующей коллекции определяется статическим типом списка. Например:

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

тип элементов каждой коллекции.

returns

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

Definition Classes
GenericTraversableTemplate
Полная подпись

def fold[A1 >: Nothing](z: A1)(op: (A1, A1) ⇒ A1): A1

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

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

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

A1

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

z

нейтральный элемент для операции свёртки; может быть добавлен к результату произвольное число раз, и не должен изменять результат (например, Nil для конкатенации списков, 0 для сложения или 1 для умножения).

op

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def foldLeft[B](z: B)(op: (B, Nothing) ⇒ B): B

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

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

B

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

z

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

op

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

returns

результат вставки op между последовательными элементами этой последовательности слева направо с начальным значением z слева:

op(...op(z, x_1), x_2, ..., x_n)

где x1, ..., xn - элементы этой последовательности. Возвращает z если эта последовательность пустая.

Definition Classes
LinearSeqOptimized → TraversableOnce → GenTraversableOnce

def foldRight[B](z: B)(op: (Nothing, B) ⇒ B): B

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

B

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

z

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

op

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

returns

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

op(x_1, op(x_2, ... op(x_n, z)...))

где x1, ..., xn - элементы этого списка. Возвращает z если этот список пустой.

Definition Classes
Список → LinearSeqOptimized → IterableLike → TraversableOnce → GenTraversableOnce

def forall(p: (Nothing) ⇒ Boolean): Boolean

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

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

p

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

returns

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

Definition Classes
LinearSeqOptimized → IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce

final def foreach(f: (A) ⇒ Unit): Unit

[случай использования]

Применяет функцию f ко всем элементам этого списка.

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

f

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

Классы определения
List → LinearSeqOptimized → IterableLike → GenericTraversableTemplate → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
Полная сигнатура

def genericBuilder[B]: Builder[B, List[B]]

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

Классы определения
GenericTraversableTemplate

final def getClass(): Class[_]

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

возвращает

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

Классы определения
AnyRef → Any
Аннотации
@native()

def groupBy[K](f: (Nothing) ⇒ K): Map[K, List[Nothing]]

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

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

K

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

f

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

возвращает

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

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

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

Классы определения
TraversableLike → GenTraversableLike

def grouped(size: Int): Iterator[List[Nothing]]

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

size

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

возвращает

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

Классы определения
IterableLike
См. также

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

def hasDefiniteSize: Boolean

Проверяет, известно ли, что эта проходящая коллекция имеет конечный размер. Все строгие коллекции известны как имеющие конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true если все элементы были вычислены. Он возвращает false если поток еще не был вычислен до конца. Непустые итераторы обычно возвращают false даже если они были созданы из коллекции с известным конечным размером.

Примечание: многие методы коллекции не будут работать с коллекциями бесконечных размеров. Типичный режим отказа – бесконечный цикл. Эти методы всегда пытаются выполнить обход, не проверяя сначала, что hasDefiniteSize возвращает true. Однако, проверка hasDefiniteSize может гарантировать, что размер определен и неявное завершение не является проблемой.

возвращает

true если эта коллекция известна как имеющая конечный размер, false в противном случае.

Классы определения
TraversableLike → TraversableOnce → GenTraversableOnce

def hashCode(): Int

Хеш-коды для Seq производят значение из хеш-кодов всех элементов последовательности.

возвращает

значение хеш-кода для этого объекта.

Классы определения
LinearSeqLike → GenSeqLike → AnyRef → Any

def head: Nothing

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

возвращает

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

Классы определения
Nil → List → LinearSeqOptimized → IterableLike → GenericTraversableTemplate → TraversableLike → GenTraversableLike
Исключения

NoSuchElementException если список пуст.

def headOption: Option[Nothing]

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

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

returns

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

Definition Classes
TraversableLike → GenTraversableLike

def indexOf(elem: Nothing, from: Int): Int

[use case]

Находит индекс первого вхождения некоторого значения в этот список после или в указанном начальном индексе.

elem

значение искомого элемента.

from

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

returns

индекс >= from первого элемента этого списка, который равен (как определено ==) elem, или -1, если такой элемент отсутствует.

Definition Classes
GenSeqLike
Полная сигнатура

def indexOf(elem: Nothing): Int

[use case]

Находит индекс первого вхождения некоторого значения в этот список.

elem

значение искомого элемента.

returns

индекс первого элемента этого списка, который равен (как определено ==) elem, или -1, если такой элемент отсутствует.

Definition Classes
GenSeqLike
Полная сигнатура

def indexOfSlice[B >: Nothing](that: GenSeq[B], from: Int): Int

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

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

that

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

from

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

returns

первый индекс >= from такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1, если такой подпоследовательности не существует.

Definition Classes
SeqLike

def indexOfSlice[B >: Nothing](that: GenSeq[B]): Int

Находит первый индекс, где эта последовательность содержит заданную последовательность как срез.

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

that

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

returns

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

Definition Classes
SeqLike

def indexWhere(p: (Nothing) ⇒ Boolean, from: Int): Int

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

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

p

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

from

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

returns

индекс >= from первого элемента этой последовательности, удовлетворяющего предикату p, или -1, если такой элемент отсутствует.

Definition Classes
LinearSeqOptimized → SeqLike → GenSeqLike

def indexWhere(p: (Nothing) ⇒ Boolean): Int

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

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

p

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

returns

индекс первого элемента этой обобщенной последовательности, удовлетворяющего предикату p, или -1, если такой элемент отсутствует.

Definition Classes
GenSeqLike

def indices: Range

Создаёт диапазон всех индексов этой последовательности.

returns

значение Range от 0 до значения, на единицу меньшего длины этой последовательности.

Definition Classes
SeqLike

def init: List[Nothing]

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

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

returns

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

Definition Classes
TraversableLike → GenTraversableLike
Exceptions thrown

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

def inits: Iterator[List[Nothing]]

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

returns

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

Definition Classes
TraversableLike
Пример:

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

def intersect(that: collection.Seq[Nothing]): List[Nothing]

[use case]

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

that

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

returns

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

Definition Classes
SeqLike → GenSeqLike
Полная подпись

def isDefinedAt(x: Int): Boolean

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

Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].

returns

true если в этой последовательности есть элемент в позиции idx, false в противном случае.

Definition Classes
LinearSeqOptimized → GenSeqLike

def isEmpty: Boolean

Проверяет, пуст ли список.

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

returns

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

Definition Classes
Nil → List → LinearSeqOptimized → SeqLike → IterableLike → GenericTraversableTemplate → TraversableLike → TraversableOnce → GenTraversableOnce

final def isInstanceOf[T0]: Boolean

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

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

returns

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

Definition Classes
Any

final def isTraversableAgain: Boolean

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

returns

true

Definition Classes
TraversableLike → GenTraversableLike → GenTraversableOnce

def iterator: Iterator[Nothing]

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

returns

новый итератор

Definition Classes
LinearSeqLike → IterableLike → GenIterableLike

def last: Nothing

Возвращает последний элемент.

returns

Последний элемент этой последовательности.

Definition Classes
LinearSeqOptimized → TraversableLike → GenTraversableLike
Исключения

NoSuchElementException Если последовательность пуста.

def lastIndexOf(elem: Nothing, end: Int): Int

[use case]

Находит индекс последнего вхождения значения в этом списке до или на заданном индексе конца.

elem

значение элемента для поиска.

end

индекс конца.

returns

индекс <= end последнего элемента этого списка, равного (как определено ==) elem, или -1, если он не существует.

Definition Classes
GenSeqLike
Полная подпись

def lastIndexOf(elem: Nothing): Int

[use case]

Находит индекс последнего вхождения некоторого значения в этот список.

elem

значение элемента, для поиска.

returns

индекс последнего элемента этого списка, равного (как определено ==) elem, или -1, если такого нет.

Definition Classes
GenSeqLike
Полная сигнатура

def lastIndexOfSlice[B >: Nothing](that: GenSeq[B], end: Int): Int

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

that

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

end

индекс окончания

returns

последний индекс <= end такой, что элементы этой последовательности, начинающиеся с этого индекса, соответствуют элементам последовательности that, или -1 если такой подпоследовательности нет.

Definition Classes
SeqLike

def lastIndexOfSlice[B >: Nothing](that: GenSeq[B]): Int

Находит последний индекс, где эта последовательность содержит заданную последовательность как срез.

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

that

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

returns

последний индекс такой, что элементы этой последовательности, начиная с этого индекса, соответствуют элементам последовательности that, или -1 если такой подпоследовательности нет.

Definition Classes
SeqLike

def lastIndexWhere(p: (Nothing) ⇒ Boolean, end: Int): Int

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

p

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

returns

индекс <= end последнего элемента этой последовательности, удовлетворяющего предикату p, или -1, если такого нет.

Definition Classes
LinearSeqOptimized → SeqLike → GenSeqLike

def lastIndexWhere(p: (Nothing) ⇒ Boolean): Int

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

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

p

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

returns

индекс последнего элемента этой общей последовательности, удовлетворяющего предикату p, или -1, если такого нет.

Definition Classes
GenSeqLike

def lastOption: Option[Nothing]

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

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

returns

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

Definition Classes
TraversableLike → GenTraversableLike

def length: Int

Длина последовательности.

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

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

returns

количество элементов в этой последовательности.

Definition Classes
LinearSeqOptimized → SeqLike → GenSeqLike

def lengthCompare(len: Int): Int

Сравнивает длину этой последовательности со значением теста.

len

значение теста, которое сравнивается с длиной.

returns

Значение x, где

x <  0       if this.length <  len
x == 0       if this.length == len
x >  0       if this.length >  len

Метод, как реализованный здесь, не вызывает length напрямую; его время выполнения - O(length min len) вместо O(length). Метод должен быть переопределен, если вычисление length является недорогим.

Definition Classes
LinearSeqOptimized → SeqLike

def lift: (Int) ⇒ Option[Nothing]

Преобразует эту частичную функцию в обычную функцию, возвращающую Option результат.

returns

функция, которая принимает аргумент x в Some(this(x)) если this определена для x, и в None в противном случае.

Definition Classes
PartialFunction
See also

Function.unlift

final def map[B](f: (A) ⇒ B): List[B]

[use case]

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

B

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

f

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

возвращает

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

Определяющие классы
List → TraversableLike → GenTraversableLike → FilterMonadic
Полная сигнатура

final def mapConserve(f: (Nothing) ⇒ Nothing): List[Nothing]

[use case]

Создаёт новый список, применяя функцию ко всем элементам этого списка. Подобно xs map f, но возвращает xs без изменений, если функция f отображает все элементы на себя (как определяется eq).

f

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

возвращает

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

Определяющие классы
List
Полная сигнатура

def max: A

[use case]

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

возвращает

наибольший элемент этого списка.

Определяющие классы
TraversableOnce → GenTraversableOnce
Полная сигнатура
Исключения

UnsupportedOperationException если этот список пуст.

def maxBy[B](f: (A) ⇒ B): A

[use case]

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

B

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

f

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

возвращает

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

Определяющие классы
TraversableOnce → GenTraversableOnce
Полная сигнатура
Исключения

UnsupportedOperationException если этот список пуст.

def min: A

[use case]

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

возвращает

наименьший элемент этого списка

Определяющие классы
TraversableOnce → GenTraversableOnce
Полная сигнатура
Исключения

UnsupportedOperationException если этот список пуст.

def minBy[B](f: (A) ⇒ B): A

[use case]

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

B

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

f

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

возвращает

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

Определяющие классы
TraversableOnce → GenTraversableOnce
Полная сигнатура
Исключения

UnsupportedOperationException если этот список пуст.

def mkString: String

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

возвращает

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

Определяющие классы
TraversableOnce → GenTraversableOnce

def mkString(sep: String): String

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

sep

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

возвращает

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

Определяющие классы
TraversableOnce → GenTraversableOnce
Пример:

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

def mkString(start: String, sep: String, end: String): String

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

start

начальная строка.

sep

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

end

конечная строка.

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce
Пример:

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

final def ne(arg0: AnyRef): Boolean

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

returns

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

Definition Classes
AnyRef

def newBuilder: Builder[Nothing, List[Nothing]]

Построитель, который создает экземпляры типа Traversable[A]

Attributes
protected[this]
Definition Classes
GenericTraversableTemplate → HasNewBuilder

def nonEmpty: Boolean

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

final def notify(): Unit

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

Definition Classes
AnyRef
Annotations
@native()
Note

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

final def notifyAll(): Unit

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

Definition Classes
AnyRef
Annotations
@native()
Note

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

def orElse[A1 <: Int, B1 >: Nothing](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]

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

A1

тип аргумента резервной функции

B1

тип результата резервной функции

that

резервная функция

returns

частичная функция, область определения которой является объединением областей определения данной частичной функции и that. Результирующая частичная функция принимает x к this(x), где this определена, и к that(x) там, где она не определена.

Definition Classes
PartialFunction

def padTo(len: Int, elem: A): List[A]

[use case]

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

len

целевая длина

elem

значение заполнения

returns

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

Definition Classes
SeqLike → GenSeqLike
Полная сигнатура

def par: ParSeq[Nothing]

Возвращает параллельную реализацию этого набора.

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

Конкретные наборы (например, ParArray или mutable.ParHashMap) переопределяют это стандартное поведение, создавая параллельный набор, который использует то же самое основание. Для таких наборов par занимает постоянное или сублинейное время.

Все параллельные наборы возвращают ссылку на самих себя.

returns

параллельная реализация этого набора

Definition Classes
Parallelizable

def parCombiner: Combiner[Nothing, ParSeq[Nothing]]

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

returns

комбинатор для параллельной коллекции типа ParRepr

Атрибуты
protected[this]
Определяющие классы
Seq → SeqLike → Iterable → TraversableLike → Parallelizable

def partition(p: (Nothing) ⇒ Boolean): (List[Nothing], List[Nothing])

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

p

предикат, по которому необходимо произвести разделение.

returns

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

Определяющие классы
TraversableLike → GenTraversableLike

def patch(from: Int, that: GenSeq[A], replaced: Int): List[A]

[use case]

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

from

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

replaced

количество элементов для удаления из исходного списка

returns

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

Определяющие классы
SeqLike → GenSeqLike
Полная сигнатура

def permutations: Iterator[List[Nothing]]

Итерация по различным перестановкам.

returns

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

Определяющие классы
SeqLike
Пример:

    "abb".permutations = Iterator(abb, bab, bba)

def prefixLength(p: (Nothing) ⇒ Boolean): Int

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

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

p

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

returns

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

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

def product: A

[use case]

Умножает элементы этой коллекции.

returns

произведение всех элементов в этом списке чисел типа Int. Вместо Int, любой другой тип T с неявной Numeric[T] реализацией может использоваться в качестве типа элементов списка и в качестве типа результата product. Примеры таких типов: Long, Float, Double, BigInt.

Определяющие классы
TraversableOnce → GenTraversableOnce
Полная сигнатура

def reduce[A1 >: Nothing](op: (A1, A1) ⇒ A1): A1

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

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

A1

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

op

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

returns

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

Определяющие классы
TraversableOnce → GenTraversableOnce
Исключения

UnsupportedOperationException если этот обходной тип или итератор пустой.

def reduceLeft[B >: Nothing](op: (B, Nothing) ⇒ B): B

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

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

B

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

op

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

returns

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

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

где x1, ..., xn - это элементы этой последовательности.

Определяющие классы
LinearSeqOptimized → TraversableOnce
Исключения

UnsupportedOperationException если эта последовательность пуста.

def reduceLeftOption[B >: Nothing](op: (B, Nothing) ⇒ B): Option[B]

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

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

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

B

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

op

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

returns

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

Определяющие классы
TraversableOnce → GenTraversableOnce

def reduceOption[A1 >: Nothing](op: (A1, A1) ⇒ A1): Option[A1]

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

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

A1

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

op

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

returns

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

Определяющие классы
TraversableOnce → GenTraversableOnce

def reduceRight[B >: Nothing](op: (Nothing, B) ⇒ B): B

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

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

B

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

op

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

returns

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

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

где x1, ..., xn являются элементами этой последовательности.

Определяющие классы
LinearSeqOptimized → IterableLike → TraversableOnce → GenTraversableOnce
Выбрасываемые исключения

UnsupportedOperationException если эта последовательность пуста.

def reduceRightOption[B >: Nothing](op: (Nothing, B) ⇒ B): Option[B]

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

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

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

B

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

op

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

returns

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

Определяющие классы
TraversableOnce → GenTraversableOnce

def repr: List[Nothing]

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

Определяющие классы
TraversableLike → GenTraversableLike

def reverse: List[Nothing]

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

returns

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

Определяющие классы
List → SeqLike → GenSeqLike

def reverseIterator: Iterator[Nothing]

Итератор, возвращающий элементы в обратном порядке.

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

Примечание: xs.reverseIterator то же самое, что и xs.reverse.iterator, но может быть более эффективным.

returns

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

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

def reverseMap[B](f: (A) ⇒ B): List[B]

[служебный случай]

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

Примечание: xs.reverseMap(f) эквивалентно xs.reverse.map(f), но может быть более эффективным.

B

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

f

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

возвращает

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

Классы-определения
SeqLike → GenSeqLike
Полная сигнатура

def reverse_:::(prefix: List[Nothing]): List[Nothing]

[служебный случай]

Добавляет элементы заданного списка в обратном порядке перед этим списком. xs reverse_::: ys эквивалентно xs.reverse ::: ys, но более эффективно.

prefix

префикс, который нужно перевернуть и добавить в начало

возвращает

объединение перевернутого префикса и текущего списка.

Классы-определения
List
Полная сигнатура

def reversed: scala.List[Nothing]

Атрибуты
protected[this]
Классы-определения
TraversableOnce

def runWith[U](action: (Nothing) ⇒ U): (Int) ⇒ Boolean

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

Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно

if(pf isDefinedAt x) { action(pf(x)); true } else false

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

action

функция действия

возвращает

функция, которая отображает аргументы x в isDefinedAt(x). Результирующая функция выполняет action(this(x)), где this определено.

Классы-определения
PartialFunction
С момента

2.10

См. также

applyOrElse.

def sameElements(that: GenIterable[A]): Boolean

[служебный случай]

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

that

коллекция для сравнения.

возвращает

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

Классы-определения
LinearSeqOptimized → IterableLike → GenIterableLike
Полная сигнатура

def scan[B >: Nothing, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[List[Nothing], B, That]): That

Вычисляет префиксное сканирование элементов коллекции.

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

B

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

That

тип результирующей коллекции

z

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

op

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

cbf

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

возвращает

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

Классы-определения
TraversableLike → GenTraversableLike

def scanLeft[B, That](z: B)(op: (B, Nothing) ⇒ B)(implicit bf: CanBuildFrom[List[Nothing], B, That]): That

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

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

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

B

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

That

фактический тип результирующей коллекции

z

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

op

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

bf

неявное значение класса CanBuildFrom, которое определяет класс результата That по типу текущего представления Repr и новому типу элементов B.

возвращает

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

Классы-определения
TraversableLike → GenTraversableLike

def scanRight[B, That](z: B)(op: (Nothing, B) ⇒ B)(implicit bf: CanBuildFrom[List[Nothing], B, That]): That

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

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

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

Пример:

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

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

That

фактический тип результирующей коллекции

z

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

op

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

bf

неявное значение класса CanBuildFrom, определяющее класс результата That из текущего типа представления Repr и нового типа элемента B.

returns

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

Definition Classes
TraversableLike → GenTraversableLike
Annotations
@migration
Migration

(Изменено в версии 2.9.0) Поведение scanRight изменилось. Предыдущее поведение можно воспроизвести с помощью scanRight.reverse.

def segmentLength(p: (Nothing) ⇒ Boolean, from: Int): Int

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

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

p

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

from

индекс, с которого начинается поиск.

returns

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

Definition Classes
LinearSeqOptimized → SeqLike → GenSeqLike

def seq: LinearSeq[Nothing]

Версия этой коллекции со всеми операциями, реализованными последовательно (т.е. в однопоточном режиме).

Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределен для возвращения последовательной реализации этой коллекции. В обоих случаях сложность составляет O(1).

returns

последовательный вид коллекции.

Definition Classes
LinearSeq → LinearSeq → LinearSeqLike → Seq → Seq → GenSeq → GenSeqLike → Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce

def size: Int

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

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

returns

количество элементов в этой последовательности.

Definition Classes
SeqLike → GenTraversableLike → TraversableOnce → GenTraversableOnce

def sizeHintIfCheap: Int

Размер этой коллекции или итератора, если его можно вычислить без особых затрат

returns

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

Attributes
protected[collection]
Definition Classes
GenTraversableOnce

def slice(from: Int, until: Int): List[Nothing]

returns

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

Definition Classes
List → LinearSeqOptimized → IterableLike → TraversableLike → GenTraversableLike
Пример:
    // Given a list
    val letters = List('a','b','c','d','e')
    
    // `slice` returns all elements beginning at index `from` and afterwards,
    // up until index `until` (excluding index `until`.)
    letters.slice(1,3) // Returns List('b','c')

def sliding(size: Int, step: Int): Iterator[List[Nothing]]

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

size

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

step

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

returns

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

Definition Classes
IterableLike
See also

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

def sliding(size: Int): Iterator[List[Nothing]]

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

size

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

returns

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

Definition Classes
IterableLike
See also

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

def sortBy[B](f: (Nothing) ⇒ B)(implicit ord: math.Ordering[B]): List[Nothing]

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

B

целевой тип преобразования f, и тип, в котором определено упорядочение ord.

f

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

ord

упорядочение, предполагаемое в области B.

returns

последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с упорядочением, где x < y если ord.lt(f(x), f(y)).

Definition Classes
SeqLike
Пример:
    val words = "The quick brown fox jumped over the lazy dog".split(' ')
    // this works because scala.Ordering will implicitly provide an Ordering[Tuple2[Int, Char]]
    words.sortBy(x => (x.length, x.head))
    res0: Array[String] = Array(The, dog, fox, the, lazy, over, brown, quick, jumped)
See also

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

def sortWith(lt: (Nothing, Nothing) ⇒ Boolean): List[Nothing]

Сортирует эту последовательность в соответствии с функцией сравнения.

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

Сортировка стабильна. То есть, элементы, которые равны (как определяется lt ), появляются в отсортированной последовательности в том же порядке, что и в исходной.

lt

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

returns

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

Definition Classes
SeqLike
Пример:
    List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
    List("Bob", "John", "Steve", "Tom")

def sorted[B >: Nothing](implicit ord: math.Ordering[B]): List[Nothing]

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

Сортировка стабильна. То есть, элементы, которые равны (как определяется lt ), появляются в отсортированной последовательности в том же порядке, что и в исходной.

ord

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

returns

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

Definition Classes
SeqLike
See also

scala.math.Ordering

final def span(p: (Nothing) ⇒ Boolean): (List[Nothing], List[Nothing])

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

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

returns

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

Definition Classes
List → LinearSeqOptimized → TraversableLike → GenTraversableLike
Annotations
@inline()

def splitAt(n: Int): (List[Nothing], List[Nothing])

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

n

позиция, по которой нужно разделить.

returns

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

Definition Classes
List → TraversableLike → GenTraversableLike

def startsWith[B](that: GenSeq[B], offset: Int): Boolean

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

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

that

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

offset

индекс, где выполняется поиск последовательности.

returns

true если последовательность that содержится в этой последовательности в индексе offset, в противном случае false.

Definition Classes
SeqLike → GenSeqLike

def startsWith[B](that: GenSeq[B]): Boolean

Проверяет, начинается ли эта общая последовательность с заданной последовательности.

that

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

returns

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

Definition Classes
GenSeqLike

def stringPrefix: String

Определяет префикс представления этого объекта.

returns

строковое представление, которое начинается с результата toString, применённого к этому списку. По умолчанию строковым префиксом является простое имя класса коллекции list.

Definition Classes
List → TraversableLike → GenTraversableLike

def sum: A

[use case]

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

returns

сумма всех элементов в этом списке чисел типа Int. Вместо Int, любой другой тип T с неявным Numeric[T] реализацией может быть использован в качестве типа элемента списка и как тип результата sum. Примеры таких типов: Long, Float, Double, BigInt.

Definition Classes
TraversableOnce → GenTraversableOnce
Полная подпись

final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef

def tail: List[Nothing]

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

returns

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

Definition Classes
Nil → List → LinearSeqOptimized → TraversableLike → GenTraversableLike
Исключения

UnsupportedOperationException если список пустой.

def tails: Iterator[List[Nothing]]

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

returns

итератор по всем хвостам этой последовательности

Definition Classes
LinearSeqOptimized → TraversableLike
Пример:

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

def take(n: Int): List[Nothing]

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

n

количество элементов для взятия из этого списка.

returns

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

Definition Classes
List → LinearSeqOptimized → IterableLike → TraversableLike → GenTraversableLike

def takeRight(n: Int): List[Nothing]

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

n

количество элементов для взятия

returns

список, содержащий только последние n элементов этого списка, или весь список, если он имеет меньше n элементов.

Definition Classes
List → IterableLike

final def takeWhile(p: (Nothing) ⇒ Boolean): List[Nothing]

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

возвращает

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

Классы-определения
List → LinearSeqOptimized → IterableLike → TraversableLike → GenTraversableLike
Аннотации
@inline()

def thisCollection: collection.LinearSeq[Nothing]

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

Атрибуты
protected[this]
Классы-определения
LinearSeqLike → SeqLike → IterableLike → TraversableLike

def to[Col[_]]: Col[A]

[use case]

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

Col

Тип коллекции, которую нужно создать.

возвращает

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

Классы-определения
TraversableLike → TraversableOnce → GenTraversableOnce
Полная сигнатура

def toArray: Array[A]

[use case]

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

возвращает

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

Классы-определения
TraversableOnce → GenTraversableOnce
Полная сигнатура

def toBuffer[B >: Nothing]: Buffer[B]

Использует содержимое этого перечислимого или итератора для создания нового изменяемого буфера.

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

возвращает

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

Классы-определения
TraversableOnce → GenTraversableOnce

def toCollection(repr: List[Nothing]): collection.LinearSeq[Nothing]

Преобразование из коллекций типа Repr в объекты Seq. По умолчанию это реализовано как просто приведение типов, но может быть переопределено.

Атрибуты
protected[this]
Классы-определения
LinearSeqLike → SeqLike → IterableLike → TraversableLike

def toIndexedSeq: IndexedSeq[Nothing]

Преобразует это перечислимое или итератор в индексированную последовательность.

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

возвращает

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

Классы-определения
TraversableOnce → GenTraversableOnce

def toIterable: collection.Iterable[Nothing]

Возвращает эту итерируемую коллекцию как итерируемую коллекцию.

Новая коллекция не будет создана; ленивые коллекции останутся ленивыми.

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

возвращает

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

Классы-определения
IterableLike → TraversableOnce → GenTraversableOnce

def toIterator: Iterator[Nothing]

Возвращает итератор по элементам в этой итерируемой коллекции. Возвращает такой же результат, как iterator.

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

возвращает

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

Классы-определения
IterableLike → TraversableLike → GenTraversableOnce
Аннотации
@deprecatedOverriding( message = ... , since = "2.11.0" )

def toList: List[Nothing]

Преобразует этот список в список.

возвращает

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

Классы-определения
List → TraversableOnce → GenTraversableOnce

def toMap[T, U]: collection.Map[T, U]

[use case]

Преобразует этот список в словарь. Этот метод недоступен, если элементы не являются членами Tuple2, при этом каждый ((T, U)) становится парой ключ-значение в словаре. Повторные ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, то какой ключ будет в результирующем словаре, не определено.

returns

словарь типа immutable.Map[T, U] содержащий все пары ключ/значение типа (T, U) этого списка.

Definition Classes
TraversableOnce → GenTraversableOnce
Полная сигнатура

def toSeq: Seq[Nothing]

Преобразует эту неизменяемую последовательность в последовательность.

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

Новая коллекция не будет создана; в частности, ленивые последовательности останутся ленивыми.

returns

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

Definition Classes
Seq → SeqLike → GenSeqLike → TraversableOnce → GenTraversableOnce

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

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

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def toStream: Stream[Nothing]

Преобразует этот список в поток.

returns

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

Definition Classes
List → IterableLike → TraversableLike → GenTraversableOnce

def toString(): String

Преобразует эту последовательность в строку.

returns

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

Definition Classes
SeqLike → TraversableLike → Any

def toTraversable: collection.Traversable[Nothing]

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

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

returns

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

Definition Classes
TraversableLike → TraversableOnce → GenTraversableOnce
Annotations
@deprecatedOverriding( message = ... , since = "2.11.0" )

def toVector: scala.Vector[Nothing]

Преобразует эту итерируемую или итераторную коллекцию в вектор.

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

returns

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

Definition Classes
TraversableOnce → GenTraversableOnce

def transpose[B](implicit asTraversable: (Nothing) ⇒ GenTraversableOnce[B]): List[List[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

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

asTraversable

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

returns

двумерная коллекция коллекций, в которой n-я строка представляет n-й столбец этой коллекции.

Definition Classes
GenericTraversableTemplate
Annotations
@migration
Migration

(Изменено в версии 2.9.0) transpose выбрасывает IllegalArgumentException если коллекции не имеют одинаковый размер.

Exceptions thrown

IllegalArgumentException, если все коллекции в этой коллекции не имеют одинаковый размер.

def union(that: collection.Seq[Nothing]): List[Nothing]

[use case]

Создаёт новую последовательность, содержащую все элементы этого списка, а также все элементы заданной последовательности. xs union ys эквивалентно xs ++ ys.

Другой способ выразить это — xs union ys вычисляет сохраняющее порядок объединение множеств xs и ys. union является, следовательно, аналогом diff и intersect, которые также работают с множествами.

that

последовательность для добавления.

returns

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

Definition Classes
SeqLike → GenSeqLike
Полная сигнатура

def unzip[A1, A2](implicit asPair: (Nothing) ⇒ (A1, A2)): (List[A1], List[A2])

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

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

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

A2

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

asPair

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

returns

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

Definition Classes
GenericTraversableTemplate

def unzip3[A1, A2, A3](implicit asTriple: (Nothing) ⇒ (A1, A2, A3)): (List[A1], List[A2], List[A3])

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

val xs = Traversable(
           (1, "one", '1'),
           (2, "two", '2'),
           (3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
//        Traversable(one, two, three),
//        Traversable(1, 2, 3))
A1

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

A2

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

A3

тип третьего члена троек элементов

asTriple

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

returns

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

Definition Classes
GenericTraversableTemplate

def updated(index: Int, elem: A): List[A]

[use case]

Копия этого списка с одним заменённым элементом.

index

позиция замены

elem

элемент замены

returns

копия этого списка с элементом в позиции index заменённым на elem.

Definition Classes
SeqLike → GenSeqLike
Полная сигнатура

def view(from: Int, until: Int): SeqView[Nothing, List[Nothing]]

Создаёт нестрогую визуализацию среза этой последовательности.

Примечание: различие между view и slice заключается в том, что view создаёт визуализацию текущей последовательности, тогда как slice создаёт новую последовательность.

Примечание: view(from, to) эквивалентно view.slice(from, to)

from

индекс первого элемента визуализации

until

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

returns

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

Definition Classes
SeqLike → IterableLike → TraversableLike

def view: SeqView[Nothing, List[Nothing]]

Создаёт нестрогую визуализацию этой последовательности.

returns

нестрогая визуализация этой последовательности.

Definition Classes
SeqLike → IterableLike → TraversableLike

final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )

final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )

final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws( ... ) @native()

def withFilter(p: (Nothing) ⇒ Boolean): FilterMonadic[Nothing, List[Nothing]]

Создаёт нестрогое фильтрующее представление этой коллекции.

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

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

p

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

returns

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

Definition Classes
TraversableLike → FilterMonadic

final def writeReplace(): AnyRef

Attributes
protected
Definition Classes
List

def zip[B](that: GenIterable[B]): List[(A, B)]

[use case]

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

B

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

that

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

returns

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

Definition Classes
IterableLike → GenIterableLike
Полная сигнатура

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

[use case]

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

B

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

that

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

thisElem

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

thatElem

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

returns

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

Definition Classes
IterableLike → GenIterableLike
Полная сигнатура

def zipWithIndex: List[(A, Int)]

[use case]

Объединяет этот список с его индексами.

returns

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

Definition Classes
IterableLike → GenIterableLike
Полная сигнатура
Пример:

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

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/immutable/Nil$.html

Spec-Zone.ru

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