30 lines
722 B
Plaintext
30 lines
722 B
Plaintext
# create an empty array
|
|
var arr = [];
|
|
|
|
# push objects into the array
|
|
arr << "a"; #: ['a']
|
|
arr.append(1,2,3); #: ['a', 1, 2, 3]
|
|
|
|
# change an element inside the array
|
|
arr[2] = "b"; #: ['a', 1, 'b', 3]
|
|
|
|
# set the value at a specific index in the array (with autovivification)
|
|
arr[5] = "end"; #: ['a', 1, 'b', 3, nil, 'end']
|
|
|
|
# resize the array
|
|
arr.resize_to(-1); #: []
|
|
|
|
# slice assignment
|
|
arr[0..2] = @|('a'..'c'); #: ['a', 'b', 'c']
|
|
|
|
# indices as arrays
|
|
var indices = [0, -1];
|
|
arr[indices] = ("foo", "baz"); #: ['foo', 'b', 'baz']
|
|
|
|
# retrieve multiple elements
|
|
var *elems = arr[0, -1]
|
|
say elems #=> ['foo', 'baz']
|
|
|
|
# retrieve an element
|
|
say arr[-1]; #=> 'baz'
|