scala

# Array

###
Related Docs: class Array | package scala

#### object Array extends FallbackArrayBuilding with 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
Version

  1.0

Linear Supertypes
Serializable, java.io.Serializable, FallbackArrayBuilding, AnyRef, Any
Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. Array
2. Serializable
3. Serializable
4. FallbackArrayBuilding
5. AnyRef
6. Any

1. Hide All
2. Show All

Visibility

1. Public
2. All

### Value Members

1. #### final def !=(arg0: Any): Boolean

   Test two objects for inequality.

   Test two objects for inequality.

   returns

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

   Definition Classes
     AnyRef → Any

2. #### final def ##(): Int

   Equivalent to `x.hashCode` except for boxed numeric types and `null`.

   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

3. #### final def ==(arg0: Any): Boolean

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

   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

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

   Creates an array of `Unit` objects

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

   Creates an array of `Double` objects

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

   Creates an array of `Float` objects

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

   Creates an array of `Long` objects

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

   Creates an array of `Int` objects

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

   Creates an array of `Char` objects

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

    Creates an array of `Short` objects

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

    Creates an array of `Byte` objects

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

    Creates an array of `Boolean` objects

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

    Creates an array with given elements.

    Creates an array with given elements.

    xs

      the elements to put in the array

    returns

      an array containing all elements from xs.

14. #### final def asInstanceOf[T0]: T0

    Cast the receiver object to be of type `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`.

15. #### implicit def canBuildFrom[T](implicit t: ClassTag[T]): CanBuildFrom[Array[_], T, Array[T]]

16. #### def clone(): AnyRef

    Create a copy of the receiver object.

    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( ... )
    Note

      not specified by SLS as a member of AnyRef

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

    Concatenates all arrays into a single array.

    Concatenates all arrays into a single array.

    xss

      the given arrays

    returns

      the array created from concatenating `xss`

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

    Copy one array to another.

    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`

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

    Returns an array of length 0

20. #### val emptyBooleanArray: Array[Boolean]

21. #### val emptyByteArray: Array[Byte]

22. #### val emptyCharArray: Array[Char]

23. #### val emptyDoubleArray: Array[Double]

24. #### val emptyFloatArray: Array[Float]

25. #### val emptyIntArray: Array[Int]

26. #### val emptyLongArray: Array[Long]

27. #### val emptyObjectArray: Array[AnyRef]

28. #### val emptyShortArray: Array[Short]

29. #### final def eq(arg0: AnyRef): Boolean

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

    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

30. #### def equals(arg0: Any): Boolean

    The equality method for reference types.

    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

31. #### implicit def fallbackCanBuildFrom[T](implicit m: DummyImplicit): CanBuildFrom[Array[_], T, ArraySeq[T]]

    A builder factory that generates a generic array.

    A builder factory that generates a generic array. Called instead of `Array.newBuilder` if the element type of an array does not have a class tag. Note that fallbackBuilder factory needs an implicit parameter (otherwise it would not be dominated in implicit search by `Array.canBuildFrom`). We make sure that implicit search is always successful.

    Definition Classes
      FallbackArrayBuilding

32. #### 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.

    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 3nd dimension

    n4

      the number of elements in the 4th dimension

    n5

      the number of elements in the 5th dimension

    elem

      the element computation

33. #### 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.

    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 3nd dimension

    n4

      the number of elements in the 4th dimension

    elem

      the element computation

34. #### 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.

    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 3nd dimension

    elem

      the element computation

35. #### 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.

    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

36. #### 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.

    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`.

37. #### def finalize(): Unit

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

    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

38. #### final def getClass(): Class[_]

    A representation that corresponds to the dynamic class of the receiver object.

    A representation that corresponds to the dynamic class of the receiver object.

    The nature of the representation is platform dependent.

    returns

      a representation that corresponds to the dynamic class of the receiver object.

    Definition Classes
      AnyRef → Any
    Note

      not specified by SLS as a member of AnyRef

39. #### def hashCode(): Int

    The hashCode method for reference types.

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

    returns

      the hash code value for this object.

    Definition Classes
      AnyRef → Any

40. #### final def isInstanceOf[T0]: Boolean

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

    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

41. #### 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.

    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)), ...`

42. #### final def ne(arg0: AnyRef): Boolean

    Equivalent to `!(this eq that)`.

    Equivalent to `!(this eq that)`.

    returns

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

    Definition Classes
      AnyRef

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

    Returns a new scala.collection.mutable.ArrayBuilder.

44. #### final def notify(): Unit

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

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

    Definition Classes
      AnyRef
    Note

      not specified by SLS as a member of AnyRef

45. #### final def notifyAll(): Unit

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

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

    Definition Classes
      AnyRef
    Note

      not specified by SLS as a member of AnyRef

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

    Creates a 5-dimensional array

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

    Creates a 4-dimensional array

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

    Creates a 3-dimensional array

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

    Creates a 2-dimensional array

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

    Creates array with given dimensions

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

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

    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`

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

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

    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`.

53. #### final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
      AnyRef

54. #### 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`.

    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

55. #### 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`.

    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

56. #### 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`.

    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

57. #### 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`.

    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

58. #### 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.

    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)`

59. #### def toString(): String

    Creates a String representation of this object.

    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

60. #### def unapplySeq[T](x: Array[T]): Option[IndexedSeq[T]]

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

    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 a Seq, otherwise `None`

61. #### final def wait(): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

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

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

63. #### final def wait(arg0: Long): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

### Inherited from Serializable

### Inherited from java.io.Serializable

### Inherited from FallbackArrayBuilding

### Inherited from AnyRef

### Inherited from Any

### Ungrouped