Spec-Zone.ru › Scala 3.1

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

Класс-компаньон • Исходный код

@SerialVersionUID(3L)
object ArraySeq extends StrictOptimizedClassTagSeqFactory[ArraySeq]

Этот объект предоставляет набор операций для создания ArraySeq значений.

Суперобъекты
Тракт StrictOptimizedClassTagSeqFactory[ArraySeq]
Тракт ClassTagSeqFactory[ArraySeq]
Тракт ClassTagIterableFactory[ArraySeq]
Тракт EvidenceIterableFactory[ArraySeq, ClassTag]
Тракт Serializable
Класс Object
Тракт Matchable
Класс Any
Тип-свойство
ArraySeq.type

Классы

Исходный код@SerialVersionUID(3L)
final class ofBoolean(val unsafeArray: Array[Boolean]) extends ArraySeq[Boolean]

Исходный код@SerialVersionUID(3L)
final class ofByte(val unsafeArray: Array[Byte]) extends ArraySeq[Byte]

Исходный код@SerialVersionUID(3L)
final class ofChar(val unsafeArray: Array[Char]) extends ArraySeq[Char]

Исходный код@SerialVersionUID(3L)
final class ofDouble(val unsafeArray: Array[Double]) extends ArraySeq[Double]

Исходный код@SerialVersionUID(3L)
final class ofFloat(val unsafeArray: Array[Float]) extends ArraySeq[Float]

Исходный код@SerialVersionUID(3L)
final class ofInt(val unsafeArray: Array[Int]) extends ArraySeq[Int]

Исходный код@SerialVersionUID(3L)
final class ofLong(val unsafeArray: Array[Long]) extends ArraySeq[Long]

Исходный код@SerialVersionUID(3L)
final class ofRef[T <: AnyRef](val unsafeArray: Array[T]) extends ArraySeq[T]

Исходный код@SerialVersionUID(3L)
final class ofShort(val unsafeArray: Array[Short]) extends ArraySeq[Short]

Исходный код@SerialVersionUID(3L)
final class ofUnit(val unsafeArray: Array[Unit]) extends ArraySeq[Unit]

Конкретные методы

Исходный код
def empty[A : ClassTag]: ArraySeq[A]

Исходный код
override def fill[A : ClassTag](n: Int)(elem: => A): ArraySeq[A]

Классы-определения StrictOptimizedClassTagSeqFactory -> EvidenceIterableFactory

Исходный код
def from[A](it: IterableOnce[A])(implicit tag: ClassTag[A]): ArraySeq[A]

Исходный код
def newBuilder[A : ClassTag]: Builder[A, ArraySeq[A]]

Исходный код
override def tabulate[A : ClassTag](n: Int)(f: Int => A): ArraySeq[A]

Классы-определения StrictOptimizedClassTagSeqFactory -> EvidenceIterableFactory

Исходный код
def unsafeWrapArray[T](x: Array[T]): ArraySeq[T]

Оборачивает существующий Array в ArraySeq соответствующего примитивного специализированного типа без копирования. Любые изменения в массиве обертки нарушат ожидаемую неизменяемость.

Обратите внимание, что массив, содержащий упакованные примитивы, может быть обернут в ArraySeq без копирования. Например, val a: Array[Any] = Array(1) является массивом Object во время выполнения, содержащим Integer. ArraySeq[Int] можно получить с помощью приведения типов: ArraySeq.unsafeWrapArray(a).asInstanceOf[ArraySeq[Int]]. Значения все еще упакованы, получившийся экземпляр является ArraySeq.ofRef. Запись ArraySeq.unsafeWrapArray(a.asInstanceOf[Array[Int]]) не работает, она вызывает ClassCastException во время выполнения.

Наследованные методы

Исходный код
def apply[A : ClassTag](xs: A*): ArraySeq[A]

Унаследовано от EvidenceIterableFactory

Исходный код
def fill[A : ClassTag](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(elem: => A): ArraySeq[ArraySeq[ArraySeq[ArraySeq[ArraySeq[A]]]]]

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

Параметры значения
elem

вычисление элемента

n1

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

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

n4

количество элементов в четвёртом измерении

n5

количество элементов в пятом измерении

Возвращает

Коллекция, содержащая результаты n1 x n2 x n3 x n4 x n5 вычислений elem.

Унаследовано от ClassTagIterableFactory

Исходный код
def fill[A : ClassTag](n1: Int, n2: Int, n3: Int, n4: Int)(elem: => A): ArraySeq[ArraySeq[ArraySeq[ArraySeq[A]]]]

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

Параметры значения
elem

вычисление элемента

n1

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

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

n4

количество элементов в четвёртом измерении

Возвращает

Коллекция, содержащая результаты n1 x n2 x n3 x n4 вычислений elem.

Унаследовано от ClassTagIterableFactory

Исходный код
def fill[A : ClassTag](n1: Int, n2: Int, n3: Int)(elem: => A): ArraySeq[ArraySeq[ArraySeq[A]]]

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

Параметры значения
elem

вычисление элемента

n1

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

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

Возвращает

Коллекция, содержащая результаты n1 x n2 x n3 вычислений elem.

Унаследовано от ClassTagIterableFactory

Исходный код
def fill[A : ClassTag](n1: Int, n2: Int)(elem: => A): ArraySeq[ArraySeq[A]]

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

Параметры значения
elem

вычисление элемента

n1

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

n2

количество элементов во втором измерении

Возвращает

Коллекция, содержащая результаты n1 x n2 вычислений elem.

Унаследовано от ClassTagIterableFactory

Исходный код
def iterate[A : ClassTag](start: A, len: Int)(f: A => A): ArraySeq[A]

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

Параметры значения
f

функция, которая применяется повторно

len

количество элементов в коллекции

start

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

Возвращает

коллекция с len значениями в последовательности start, f(start), f(f(start)), ...

Унаследовано от EvidenceIterableFactory

Исходный код
def range[A : ClassTag](start: A, end: A, step: A): ArraySeq[A]

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

Параметры значения
end

конечное значение коллекции (первое значение, НЕ содержащееся)

start

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

step

разница между последовательными элементами коллекции (должна быть положительной или отрицательной)

Возвращает

коллекция со значениями start, start + step, ... до, но не включая end

Унаследовано от ClassTagIterableFactory

Исходный код
def range[A : ClassTag](start: A, end: A): ArraySeq[A]

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

Параметры значения
end

конечное значение коллекции (первое значение, НЕ содержащееся)

start

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

Возвращает

коллекция со значениями start, start + 1, ..., end - 1

Унаследовано от ClassTagIterableFactory

Исходный код
def tabulate[A : ClassTag](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(f: (Int, Int, Int, Int, Int) => A): ArraySeq[ArraySeq[ArraySeq[ArraySeq[ArraySeq[A]]]]]

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

Параметры значения
f

Функция, вычисляющая значения элементов

n1

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

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

n4

количество элементов в четвёртом измерении

n5

количество элементов в пятом измерении

Возвращает

Коллекция, состоящая из элементов f(i1, i2, i3, i4, i5) для 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, 0 <= i4 < n4, и 0 <= i5 < n5.

Унаследовано от ClassTagIterableFactory

Исходный код
def tabulate[A : ClassTag](n1: Int, n2: Int, n3: Int, n4: Int)(f: (Int, Int, Int, Int) => A): ArraySeq[ArraySeq[ArraySeq[ArraySeq[A]]]]

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

Параметры значения
f

Функция, вычисляющая значения элементов

n1

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

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

n4

количество элементов в четвёртом измерении

Возвращает

Коллекция, состоящая из элементов f(i1, i2, i3, i4) для 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, и 0 <= i4 < n4.

Унаследовано от ClassTagIterableFactory

Исходный код
def tabulate[A : ClassTag](n1: Int, n2: Int, n3: Int)(f: (Int, Int, Int) => A): ArraySeq[ArraySeq[ArraySeq[A]]]

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

Параметры значения
f

Функция вычисления значений элементов

n1

число элементов в первом измерении

n2

число элементов во втором измерении

n3

число элементов в третьем измерении

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

Коллекция, состоящая из элементов f(i1, i2, i3) для 0 <= i1 < n1, 0 <= i2 < n2, и 0 <= i3 < n3.

Унаследовано от ClassTagIterableFactory

Источник
def tabulate[A : ClassTag](n1: Int, n2: Int)(f: (Int, Int) => A): ArraySeq[ArraySeq[A]]

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

Параметры значения
f

Функция вычисления значений элементов

n1

число элементов в первом измерении

n2

число элементов во втором измерении

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

Коллекция, состоящая из элементов f(i1, i2) для 0 <= i1 < n1 и 0 <= i2 < n2.

Унаследовано от ClassTagIterableFactory

Источник
final def unapplySeq[A](x: ArraySeq[A]): UnapplySeqWrapper[A]

Унаследовано от ClassTagSeqFactory

Источник
def unfold[A : ClassTag, S](init: S)(f: S => Option[(A, S)]): ArraySeq[A]

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

Параметры типа
A

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

S

Тип внутреннего состояния

Параметры значения
f

Вычисляет следующий элемент (или возвращает None для сигнализации об окончании коллекции)

init

Начальное значение состояния

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

коллекция, которая производит элементы, используя f до тех пор, пока f не вернёт None

Унаследовано от EvidenceIterableFactory

Конкретные поля

Источник
val untagged: SeqFactory[ArraySeq]

Унаследованные неявные методы

Источник
implicit def evidenceIterableFactory[A : ClassTag]: Factory[A, ArraySeq[A]]

Унаследовано от EvidenceIterableFactory

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/collection/immutable/ArraySeq$.html

Spec-Zone.ru

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