ruby における配列操作

簡単なまとめ

一つ目の引数にインデックスを、二つ目の引数に取得したい要素の数をいれると、そのインデックスから引数分だけ要素を取得する。

a = [0, 1, 2, 3, 4, 5]
a[2, 2] 
#=> [2,3]


素数を指定した代入

a = [0, 1, 2, 3, 4, 5]
a[1, 3] = "a"
#=> [0, a, 4, 5]


素数を指定して配列の代入

a = [0, 1, 2, 3, 4, 5]
a[1, 3] = ["a", "b", "c"]
#=> [0, a, b, c, 4, 5]


多重代入

a, b, c = 1, 2, 3
p a #=> 1
p b #=> 2
p c #=> 3


最後の変数に配列で代入。「*」で可能。

a, *b = 1, 2, 3
p a #=> 1
p b #=> [2, 3]


&演算子と*演算子

a = [1, 1, 2, 2]
b = [2, 2, 3, 3]
a & b #=> [2]
a | b #=> [1, 2, 3]


配列での加算と減算 加算ではそのまま足すだけだが、減算では右オペランドで指定した値を引いていく。

a = [1, 1, 2, 2]
b = [2, 2, 3, 3]
c = [1]
a + b #=> [1, 1, 2, 2, 2, 2, 3, 3]
a - b #=> [1, 1]
a - c #=> [2, 2]