これ何
&.
ってなんて呼びんだっけ...って調べてたので、ついでにまとめる。
答え「ぼっち演算子」
英語では「safe navigation operator」というらしい。学び。
公式ドキュメントにも確かに載っていた。
参考:Ruby 2.7.0 リファレンスマニュアル Rubyで使われる記号の意味(正規表現の複雑な記号は除く) #and
ついでに
調査ついでに、リファレンスマニュアル を読んでいたら ^=
ってmethodが気になった。
右辺がtrueの場合には、aの論理値の反転した値を返す。
b = true
3.times do
b ^= true
puts b
end
# => false
# => true
# => false
左辺がfalseの場合には、反転せず、同じbooleanの値を返す。
b = true
3.times do
b ^= false
puts b
end
# => true
# => true
# => true
b = false
3.times do
b ^= false
puts b
end
# => false
# => false
# => false
stringやintegerなどでも試したところ、NoMethodErrorになった。
b = 'a'
b ^= true
# => NoMethodError (undefined method `^' for "a":String)
参考:Ruby 2.7.0 リファレンスマニュアル Rubyで使われる記号の意味(正規表現の複雑な記号は除く) #hat
まとめ
ついでを調べると意外な発見がある!