An Array is a storage for values. You can access it using indexes or with its API.

See:

### Constructor

### Variables

### Methods

`concat (a:Array<T>):Array<T>`

Returns a new Array by appending the elements of `a`

to the elements of
`this`

Array.

This operation does not modify `this`

Array.

If `a`

is the empty Array `[]`

, a copy of `this`

Array is returned.

The length of the returned Array is equal to the sum of `this.length`

and `a.length`

.

If `a`

is `null`

, the result is unspecified.

`indexOf (x:T, ?fromIndex:Int):Int`

Returns position of the first occurrence of `x`

in `this`

Array, searching front to back.

If `x`

is found by checking standard equality, the function returns its index.

If `x`

is not found, the function returns -1.

If `fromIndex`

is specified, it will be used as the starting index to search from,
otherwise search starts with zero index. If it is negative, it will be taken as the
offset from the end of `this`

Array to compute the starting index. If given or computed
starting index is less than 0, the whole array will be searched, if it is greater than
or equal to the length of `this`

Array, the function returns -1.

`join (sep:String):String`

Returns a string representation of `this`

Array, with `sep`

separating
each element.

The result of this operation is equal to ```
Std.string(this[0]) + sep +
Std.string(this[1]) + sep + ... + sep + Std.string(this[this.length-1])
```

If `this`

is the empty Array `[]`

, the result is the empty String `""`

.
If `this`

has exactly one element, the result is equal to a call to
`Std.string(this[0])`

.

If `sep`

is null, the result is unspecified.

`pop ():Null<T>`

Removes the last element of `this`

Array and returns it.

This operation modifies `this`

Array in place.

If `this`

has at least one element, `this.length`

will decrease by 1.

If `this`

is the empty Array `[]`

, null is returned and the length
remains 0.

`push (x:T):Int`

Adds the element `x`

at the end of `this`

Array and returns the new
length of `this`

Array.

This operation modifies `this`

Array in place.

`this.length`

increases by 1.

`slice (pos:Int, ?end:Int):Array<T>`

Creates a shallow copy of the range of `this`

Array, starting at and
including `pos`

, up to but not including `end`

.

This operation does not modify `this`

Array.

The elements are not copied and retain their identity.

If `end`

is omitted or exceeds `this.length`

, it defaults to the end of
`this`

Array.

If `pos`

or `end`

are negative, their offsets are calculated from the
end of `this`

Array by `this.length + pos`

and `this.length + end`

respectively. If this yields a negative value, 0 is used instead.

If `pos`

exceeds `this.length`

or if `end`

is less than or equals
`pos`

, the result is `[]`

.

`sort (f:T ‑> T ‑> Int):Void`

Sorts `this`

Array according to the comparison function `f`

, where
`f(x,y)`

returns 0 if x == y, a positive Int if x > y and a
negative Int if x < y.

This operation modifies `this`

Array in place.

The sort operation is not guaranteed to be stable, which means that the
order of equal elements may not be retained. For a stable Array sorting
algorithm, `haxe.ds.ArraySort.sort()`

can be used instead.

If `f`

is null, the result is unspecified.

`splice (pos:Int, len:Int):Array<T>`

Removes `len`

elements from `this`

Array, starting at and including
`pos`

, an returns them.

This operation modifies `this`

Array in place.

If `len`

is < 0 or `pos`

exceeds `this`

.length, an empty Array [] is
returned and `this`

Array is unchanged.

If `pos`

is negative, its value is calculated from the end of `this`

Array by `this.length + pos`

. If this yields a negative value, 0 is
used instead.

If the sum of the resulting values for `len`

and `pos`

exceed
`this.length`

, this operation will affect the elements from `pos`

to the
end of `this`

Array.

The length of the returned Array is equal to the new length of `this`

Array subtracted from the original length of `this`

Array. In other
words, each element of the original `this`

Array either remains in
`this`

Array or becomes an element of the returned Array.