RubyのArrayの演算子はちょっとおもしろい

Arrayの「+」「-」「&」「|」演算子がちょっとおもしろい。

+演算子

お互いを連結した新しい配列を返す。
[1, 2, 3] + [4, 5, 6] #=> [1, 2, 3, 4, 5, 6]

-演算子

重複した要素を取り除いた新しい配列を返す。
[1, 2, 3, 4, 5] - [1, 3, 5] #=> [2, 4]

&演算子

重複した要素からなる新しい配列を返す。
[1, 2, 3, 4, 5] & [1, 3, 5] #=> [1, 3, 5]

|演算子

どちらかに含まれている要素からなる新しい配列を返す。
[1, 2, 3, 4, 5] | [1, 3, 5, 7, 9] #=> [1, 2, 3, 4, 5, 7, 9]
[1, 3, 5] | [1, 2, 3, 4, 5] #=> [1, 3, 5, 2, 4]