# +=や*=と同様に考えれば&演算子の意味がわかれば理解できる
foo &= bar
# これは foo = foo & bar を意味する
#&演算子
積集合や論理積を意味する
# Arrayの積集合
[1, 1, 2, 3] & [3, 1, 4]
=> [1, 3]
# TrueClass, FalseClass
true & true
=> true
true & false
=> false
false & false
=> false
nil & true
=> false
nil & false
=> false
# Integer(ビット2項演算子)
1 & 1
=> 1
2 & 3
=> 2