Object scala.Array

Companion class Array

object Array extends java.io.Serializable

Utility methods for operating on arrays. For example:

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

where the array objects a, b and c have respectively the values Array(1, 2), Array(0, 0) and Array(1, 2, 0, 0).

Source
Array.scala
Since

1.0

Linear Supertypes
java.io.Serializable, AnyRef, Any

Type Members

final class UnapplySeqWrapper[T] extends AnyVal

Value Members

final def !=(arg0: Any): Boolean

Test two objects for inequality.

returns

true if !(this == that), false otherwise.

Definition Classes
AnyRef → Any

final def ##(): Int

Equivalent to x.hashCode except for boxed numeric types and null. For numerics, it returns a hash value which is consistent with value equality: if two value type instances compare as true, then ## will produce the same hash value for each of them. For null returns a hashcode where null.hashCode throws a NullPointerException.

returns

a hash value consistent with ==

Definition Classes
AnyRef → Any

final def ==(arg0: Any): Boolean

The expression x == that is equivalent to if (x eq null) that eq null else x.equals(that).

returns

true if the receiver object is equivalent to the argument; false otherwise.

Definition Classes
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]

Creates an array with given elements.

xs

the elements to put in the array

returns

an array containing all elements from xs.

final def asInstanceOf[T0]: T0

Cast the receiver object to be of type T0.

Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression 1.asInstanceOf[String] will throw a ClassCastException at runtime, while the expression List(1).asInstanceOf[List[String]] will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested type.

returns

the receiver object.

Definition Classes
Any
Exceptions thrown

ClassCastException if the receiver object is not an instance of the erasure of type T0.

def clone(): AnyRef

Create a copy of the receiver object.

The default implementation of the clone method is platform dependent.

returns

a copy of the receiver object.

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

not specified by SLS as a member of AnyRef

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

Concatenates all arrays into a single array.

xss

the given arrays

returns

the array created from concatenating xss

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

Copy one array to another. Equivalent to Java's System.arraycopy(src, srcPos, dest, destPos, length), except that this also works for polymorphic and boxed arrays.

Note that the passed-in dest array will be modified by this call.

src

the source array.

srcPos

starting position in the source array.

dest

destination array.

destPos

starting position in the destination array.

length

the number of array elements to be copied.

See also

java.lang.System#arraycopy

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

Copy one array to another, truncating or padding with default values (if necessary) so the copy has the specified length. The new array can have a different type than the original one as long as the values are assignment-compatible. When copying between primitive and object arrays, boxing and unboxing are supported.

Equivalent to Java's java.util.Arrays.copyOf(original, newLength, newType), except that this works for all combinations of primitive and object arrays in a single method.

See also

java.util.Arrays#copyOf

def copyOf[A](original: Array[A], newLength: Int): Array[A]

Copy one array to another, truncating or padding with default values (if necessary) so the copy has the specified length.

Equivalent to Java's java.util.Arrays.copyOf(original, newLength), except that this works for primitive and object arrays in a single method.

See also

java.util.Arrays#copyOf

def empty[T](implicit arg0: ClassTag[T]): Array[T]

val emptyBooleanArray: Array[Boolean]

val emptyByteArray: Array[Byte]

val emptyCharArray: Array[Char]

val emptyDoubleArray: Array[Double]

val emptyFloatArray: Array[Float]

val emptyIntArray: Array[Int]

val emptyLongArray: Array[Long]

val emptyObjectArray: Array[AnyRef]

val emptyShortArray: Array[Short]

final def eq(arg0: AnyRef): Boolean

Tests whether the argument (that) is a reference to the receiver object (this).

The eq method implements an equivalence relation on non-null instances of AnyRef, and has three additional properties:

    It is consistent: for any non-null instances x and y of type AnyRef, multiple invocations of x.eq(y) consistently returns true or consistently returns false.For any non-null instance x of type AnyRef, x.eq(null) and null.eq(x) returns false. null.eq(null) returns true.

When overriding the equals or hashCode methods, it is important to ensure that their behavior is consistent with reference equality. Therefore, if two objects are references to each other (o1 eq o2), they should be equal to each other (o1 == o2) and they should hash to the same value (o1.hashCode == o2.hashCode).

returns

true if the argument is a reference to the receiver object; false otherwise.

Definition Classes
AnyRef

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

def equals(arg0: AnyRef): Boolean

The equality method for reference types. Default implementation delegates to eq.

See also equals in scala.Any.

returns

true if the receiver object is equivalent to the argument; false otherwise.

Definition Classes
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]]]]]

Returns a five-dimensional array that contains the results of some element computation a number of times.

n1

the number of elements in the 1st dimension

n2

the number of elements in the 2nd dimension

n3

the number of elements in the 3rd dimension

n4

the number of elements in the 4th dimension

n5

the number of elements in the 5th dimension

elem

the element computation

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

Returns a four-dimensional array that contains the results of some element computation a number of times.

n1

the number of elements in the 1st dimension

n2

the number of elements in the 2nd dimension

n3

the number of elements in the 3rd dimension

n4

the number of elements in the 4th dimension

elem

the element computation

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

Returns a three-dimensional array that contains the results of some element computation a number of times.

n1

the number of elements in the 1st dimension

n2

the number of elements in the 2nd dimension

n3

the number of elements in the 3rd dimension

elem

the element computation

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

Returns a two-dimensional array that contains the results of some element computation a number of times.

n1

the number of elements in the 1st dimension

n2

the number of elements in the 2nd dimension

elem

the element computation

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

Returns an array that contains the results of some element computation a number of times.

Note that this means that elem is computed a total of n times:

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

the number of elements desired

elem

the element computation

returns

an Array of size n, where each element contains the result of computing elem.

def finalize(): Unit

Called by the garbage collector on the receiver object when there are no more references to the object.

The details of when and if the finalize method is invoked, as well as the interaction between finalize and non-local returns and exceptions, are all platform dependent.

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

not specified by SLS as a member of AnyRef

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

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

Returns the runtime class representation of the object.

returns

a class object corresponding to the runtime type of the receiver.

Definition Classes
AnyRef → Any
Annotations
@native()

def hashCode(): Int

The hashCode method for reference types. See hashCode in scala.Any.

returns

the hash code value for this object.

Definition Classes
AnyRef → Any
Annotations
@native()

final def isInstanceOf[T0]: Boolean

Test whether the dynamic type of the receiver object is T0.

Note that the result of the test is modulo Scala's erasure semantics. Therefore the expression 1.isInstanceOf[String] will return false, while the expression List(1).isInstanceOf[List[String]] will return true. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the specified type.

returns

true if the receiver object is an instance of erasure of type T0; false otherwise.

Definition Classes
Any

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

Returns an array containing repeated applications of a function to a start value.

start

the start value of the array

len

the number of elements returned by the array

f

the function that is repeatedly applied

returns

the array returning len values in the sequence start, f(start), f(f(start)), ...

final def ne(arg0: AnyRef): Boolean

Equivalent to !(this eq that).

returns

true if the argument is not a reference to the receiver object; false otherwise.

Definition Classes
AnyRef

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

final def notify(): Unit

Wakes up a single thread that is waiting on the receiver object's monitor.

Definition Classes
AnyRef
Annotations
@native()
Note

not specified by SLS as a member of AnyRef

final def notifyAll(): Unit

Wakes up all threads that are waiting on the receiver object's monitor.

Definition Classes
AnyRef
Annotations
@native()
Note

not specified by SLS as a member of 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]

Returns an array containing equally spaced values in some integer interval.

start

the start value of the array

end

the end value of the array, exclusive (in other words, this is the first value not returned)

step

the increment value of the array (may not be zero)

returns

the array with values in start, start + step, ... up to, but excluding end

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

Returns an array containing a sequence of increasing integers in a range.

start

the start value of the array

end

the end value of the array, exclusive (in other words, this is the first value not returned)

returns

the array with values in range start, start + 1, ..., end - 1 up to, but excluding, 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]]]]]

Returns a five-dimensional array containing values of a given function over ranges of integer values starting from 0.

n1

the number of elements in the 1st dimension

n2

the number of elements in the 2nd dimension

n3

the number of elements in the 3rd dimension

n4

the number of elements in the 4th dimension

n5

the number of elements in the 5th dimension

f

The function computing element values

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]]]]

Returns a four-dimensional array containing values of a given function over ranges of integer values starting from 0.

n1

the number of elements in the 1st dimension

n2

the number of elements in the 2nd dimension

n3

the number of elements in the 3rd dimension

n4

the number of elements in the 4th dimension

f

The function computing element values

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

Returns a three-dimensional array containing values of a given function over ranges of integer values starting from 0.

n1

the number of elements in the 1st dimension

n2

the number of elements in the 2nd dimension

n3

the number of elements in the 3rd dimension

f

The function computing element values

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

Returns a two-dimensional array containing values of a given function over ranges of integer values starting from 0.

n1

the number of elements in the 1st dimension

n2

the number of elements in the 2nd dimension

f

The function computing element values

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

Returns an array containing values of a given function over a range of integer values starting from 0.

n

The number of elements in the array

f

The function computing element values

returns

A traversable consisting of elements 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

Creates a String representation of this object. The default representation is platform dependent. On the java platform it is the concatenation of the class name, "@", and the object's hashcode in hexadecimal.

returns

a String representation of the object.

Definition Classes
AnyRef → Any

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

Called in a pattern match like { case Array(x,y,z) => println('3 elements')}.

x

the selector value

returns

sequence wrapped in a scala.Some, if x is an Array, otherwise 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