ようへいの日々精進XP

よかろうもん

配列の & 演算子と | 演算子と + 演算子と - 演算子(Ruby)

tl;dr

これもよく記憶が飛んでしまうので...メモ。「愛しさと切なさと心強さと」みたいなタイトルですいません。

メモ

& 演算子

  • 両方に含まれる要素を配列で返す
$ ruby
[1] pry(main)> a = [1,2,3]  # 配列の生成
=> [1, 2, 3]
[2] pry(main)> b = [1,3,5]  # 配列の生成
=> [1, 3, 5]
[3] pry(main)> p a & b      # 比較
[1, 3]
=> [1, 3]

| 演算子

  • どちらかに含まれる要素を配列で返す
$ pry
[1] pry(main)> a = [1,2,3]  # 配列の生成
=> [1, 2, 3]
[2] pry(main)> b = [1,3,5]  # 配列の生成
=> [1, 3, 5]
[3] pry(main)> p a | b      # 比較
[1, 2, 3, 5]
=> [1, 2, 3, 5]

+ 演算子

  • 要素を連結(ガッチャンコ)して配列で返す
$ pry                                                                                                                                       
[1] pry(main)> a = [1,2,3]  # 配列の生成
=> [1, 2, 3]
[2] pry(main)> b = [1,3,5]  # 配列の生成
=> [1, 3, 5]
[3] pry(main)> p a + b      # ガッチャンコ
[1, 2, 3, 1, 3, 5]
=> [1, 2, 3, 1, 3, 5]

- 演算子

  • 対象の要素を取り除いた配列を返す
$ pry
[1] pry(main)> a = [1,2,3]  # 配列の生成
=> [1, 2, 3]
[2] pry(main)> b = [1,3,5]  # 配列の生成
=> [1, 3, 5]
[3] pry(main)> p a + b      # ガッチャンコ
[1, 2, 3, 1, 3, 5]
=> [1, 2, 3, 1, 3, 5]
[4] pry(main)> c = [2,3,4]  # 配列の生成
=> [2, 3, 4]
[5] pry(main)> p a + b - c  # 引き算
[1, 1, 5]
=> [1, 1, 5]

以上

メモでした。