2

ここでビットごとの OR がブール値を返すのはなぜですか。すべての演算子の中で、ビットごとの演算子にはあまり期待できません。

nil | 5 # => true
nil | 0 # => true
nil | true # => true
nil | false # => false
nil | nil # => false
4

1 に答える 1

0

同じトピックで回答が見つかりました:)

NilClass#|が判明しました。オーバーライドされます:

false | obj → true or false
nil | obj → true or false
Or—Returns false if obj is nil or false; true otherwise.
于 2013-03-22T05:17:45.940 に答える