Spec-Zone.ru › Scala 2.13 Library

Объект scala.Array

Компаньон класс Array

объект Array extends java.io.Serializable

Утилитарные методы для работы с массивами. Например:

val a = Array(1, 2)
val b = Array.ofDim[Int](2)
val c = Array.concat(a, b)

где объекты массивов a, b и c соответственно имеют значения Array(1, 2), Array(0, 0) и Array(1, 2, 0, 0).

Источник
Array.scala
С

1.0

Линейные супертипы
java.io.Serializable, AnyRef, Any

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

final класс UnapplySeqWrapper[T] extends AnyVal

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

final def !=(arg0: Any): Boolean

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

возвращает

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

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

final def ##(): Int

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

возвращает

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

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

final def ==(arg0: Any): Boolean

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

возвращает

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

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

def apply(x: Unit, xs: Unit*): Array[Unit]

def apply(x: Double, xs: Double*): Array[Double]

def apply(x: Float, xs: Float*): Array[Float]

def apply(x: Long, xs: Long*): Array[Long]

def apply(x: Int, xs: Int*): Array[Int]

def apply(x: Char, xs: Char*): Array[Char]

def apply(x: Short, xs: Short*): Array[Short]

def apply(x: Byte, xs: Byte*): Array[Byte]

def apply(x: Boolean, xs: Boolean*): Array[Boolean]

def apply[T](xs: T*)(implicit arg0: ClassTag[T]): Array[T]

Создаёт массив с заданными элементами.

xs

элементы для вставки в массив

returns

массив, содержащий все элементы из xs.

final def asInstanceOf[T0]: T0

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

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

returns

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

Definition Classes
Any
Exceptions thrown

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

def clone(): AnyRef

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

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

возвращает

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

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

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

def concat[T](xss: Array[T]*)(implicit arg0: ClassTag[T]): Array[T]

Конкатенирует все массивы в один массив.

xss

указанные массивы

возвращает

массив, созданный путём конкатенации xss

def copy(src: AnyRef, srcPos: Int, dest: AnyRef, destPos: Int, length: Int): Unit

Копирует один массив в другой. Эквивалентно Java's System.arraycopy(src, srcPos, dest, destPos, length), за исключением того, что это также работает для полиморфных и упакованных массивов.

Обратите внимание, что переданный массив dest будет изменён этим вызовом.

src

исходный массив.

srcPos

начальная позиция в исходном массиве.

dest

массив назначения.

destPos

начальная позиция в целевом массиве.

length

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

См. также

java.lang.System#arraycopy

def copyAs[A](original: Array[_], newLength: Int)(implicit ct: ClassTag[A]): Array[A]

Копирует один массив в другой, усекая или заполняя значениями по умолчанию (при необходимости), чтобы копия имела указанную длину. Новый массив может иметь тип, отличный от исходного, при условии, что значения совместимы с присваиванием. При копировании между примитивными и объектные массивами поддерживается бокс и унбоксинг.

Эквивалентно Java's java.util.Arrays.copyOf(original, newLength, newType), за исключением того, что это работает для всех комбинаций примитивных и объектных массивов в одном методе.

См. также

java.util.Arrays#copyOf

def copyOf[A](original: Массив[A], newLength: Целое): Массив[A]

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

Эквивалентно java.util.Arrays.copyOf(original, newLength), за исключением того, что это работает для примитивных и объектных массивов в одном методе.

См. также

java.util.Arrays#copyOf

def empty[T](implicit arg0: ClassTag[T]): Массив[T]

val emptyBooleanArray: Массив[Булево]

val emptyByteArray: Массив[Байт]

val emptyCharArray: Массив[Символ]

val emptyDoubleArray: Массив[Двойное]

val emptyFloatArray: Массив[Вещественный]

val emptyIntArray: Массив[Целое]

val emptyLongArray: Массив[Длинное]

val emptyObjectArray: Массив[ЛюбойРеферес]

val emptyShortArray: Массив[Короткое]

final def eq(arg0: ЛюбойРеферес): Булево

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

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

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

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

возвращает

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

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

def equals(xs: Array[AnyRef], ys: Array[AnyRef]): Boolean

def equals(arg0: AnyRef): Boolean

Метод сравнения для ссылочных типов. Реализация по умолчанию делегирует вызов методу eq.

См. также equals в scala.Any.

возвращает

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

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

def fill[T](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(elem: => T)(implicit arg0: ClassTag[T]): Array[Array[Array[Array[Array[T]]]]]

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

n1

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

n2

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

n3

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

n4

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

n5

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

elem

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

def fill[T](n1: Int, n2: Int, n3: Int, n4: Int)(elem: => T)(implicit arg0: ClassTag[T]): Array[Array[Array[Array[T]]]]

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

n1

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

n2

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

n3

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

n4

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

elem

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

def fill[T](n1: Int, n2: Int, n3: Int)(elem: => T)(implicit arg0: ClassTag[T]): Array[Array[Array[T]]]

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

n1

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

n2

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

n3

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

elem

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

def fill[T](n1: Int, n2: Int)(elem: => T)(implicit arg0: ClassTag[T]): Array[Array[T]]

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

n1

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

n2

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

elem

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

def fill[T](n: Int)(elem: => T)(implicit arg0: ClassTag[T]): Array[T]

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

Обратите внимание, что это означает, что elem вычисляется в общей сложности n раз:

scala> Array.fill(3){ math.random }
res3: Array[Double] = Array(0.365461167592537, 1.550395944913685E-4, 0.7907242137333306)
n

количество желаемых элементов

elem

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

returns

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

def finalize(): Unit

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

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

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

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

def from[A](it: IterableOnce[A])(implicit arg0: ClassTag[A]): Array[A]

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

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

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

def hashCode(): Int

Метод hashCode для ссылочных типов. См. hashCode в scala.Any.

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

final def isInstanceOf[T0]: Boolean

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

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

возвращает

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

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

def iterate[T](start: T, len: Int)(f: (T) => T)(implicit arg0: ClassTag[T]): Array[T]

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

start

начальное значение массива

len

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

f

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

возвращает

массив, возвращающий значения len в последовательности start, f(start), f(f(start)), ...

final def ne(arg0: AnyRef): Boolean

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

возвращает

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

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

def newBuilder[T](implicit t: ClassTag[T]): ArrayBuilder[T]

final def notify(): Unit

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

Классы определений
AnyRef
Аннотации
@native()
Примечание

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

final def notifyAll(): Unit

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

Классы определений
AnyRef
Аннотации
@native()
Примечание

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

def ofDim[T](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(implicit arg0: ClassTag[T]): Array[Array[Array[Array[Array[T]]]]]

def ofDim[T](n1: Int, n2: Int, n3: Int, n4: Int)(implicit arg0: ClassTag[T]): Array[Array[Array[Array[T]]]]

def ofDim[T](n1: Int, n2: Int, n3: Int)(implicit arg0: ClassTag[T]): Array[Array[Array[T]]]

def ofDim[T](n1: Int, n2: Int)(implicit arg0: ClassTag[T]): Array[Array[T]]

def ofDim[T](n1: Int)(implicit arg0: ClassTag[T]): Array[T]

def range(start: Int, end: Int, step: Int): Array[Int]

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

start

начальное значение массива

end

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

step

значение приращения массива (не может быть нулём)

returns

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

def range(start: Int, end: Int): Array[Int]

Возвращает массив, содержащий последовательность возрастающих целых чисел в диапазоне.

start

начальное значение массива

end

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

returns

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

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

Definition Classes
AnyRef

def tabulate[T](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(f: (Int, Int, Int, Int, Int) => T)(implicit arg0: ClassTag[T]): Array[Array[Array[Array[Array[T]]]]]

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

n1

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

n2

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

n3

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

n4

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

n5

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

f

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

def tabulate[T](n1: Int, n2: Int, n3: Int, n4: Int)(f: (Int, Int, Int, Int) => T)(implicit arg0: ClassTag[T]): Array[Array[Array[Array[T]]]]

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

n1

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

n2

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

n3

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

n4

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

f

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

def tabulate[T](n1: Int, n2: Int, n3: Int)(f: (Int, Int, Int) => T)(implicit arg0: ClassTag[T]): Array[Array[Array[T]]]

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

n1

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

n2

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

n3

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

f

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

def tabulate[T](n1: Int, n2: Int)(f: (Int, Int) => T)(implicit arg0: ClassTag[T]): Array[Array[T]]

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

n1

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

n2

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

f

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

def tabulate[T](n: Int)(f: (Int) => T)(implicit arg0: ClassTag[T]): Array[T]

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

n

Количество элементов в массиве

f

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

returns

Проход по элементам f(0),f(1), ..., f(n - 1)

implicit def toFactory[A](dummy: Array.type)(implicit arg0: ClassTag[A]): Factory[A, Array[A]]

def toString(): String

Создает строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, «@» и хэш-кода объекта в шестнадцатеричном формате.

returns

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

Definition Classes
AnyRef → Any

def unapplySeq[T](x: Array[T]): UnapplySeqWrapper[T]

Вызывается в шаблоне сопоставления, например, { case Array(x,y,z) => println('3 elements')}.

x

значение селектора

returns

последовательность, обернутая в scala.Some, если x является массивом, иначе None

final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException]) @native()

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/Array$.html

Spec-Zone.ru

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