配列について

#最後の要素の取り方
a=[1,2,3,4,5]
a[-1] #=> 5
a.last #=> 5

#要素の追加
#<<でもpushでもできる。pushだと複数追加できる。
a=[1,2,3,4,5]
a << 6 #=> [1, 2, 3, 4, 5, 6]
a.push(7) #=> [1, 2, 3, 4, 5, 6, 7]
a.push(7,8) #=> [1, 2, 3, 4, 5, 6, 7, 7, 8]

#配列の変数で追加するときは*をつける。
b=[10,11]
a.push(*b) #=> [1, 2, 3, 4, 5, 6, 7, 7, 8, 10, 11]
# *をつけないと配列ごと追加されてしまう
a.push(b) #=> [1, 2, 3, 4, 5, 6, 7, 7, 8, 10, 11, [10, 11]]

#配列の連結
a=[1,2,3]
b=[7,8,9]
#concatを使うとaに連結した値が設定される
a.concat(b) #=> [1, 2, 3, 7, 8, 9]
a #=> [1, 2, 3, 7, 8, 9]
b #=> [7, 8, 9]
#+を使うとaとbの値は変わらない
a + b #=> [1, 2, 3, 7, 8, 9]
a #=> [1, 2, 3]
b #=> [7, 8, 9]

#集合を扱えるSetクラス
require 'set'
a = Set.new([0,1,2,3])
b = Set.new([0,7,8,9])
a | b #和集合<Set: {0, 1, 2, 3, 7, 8, 9}>
a - b #差集合<Set: {1, 2, 3}>
a & b #積集合<Set: {0}>
参考文献

「プロを目指す人のためのRuby入門」