真偽値と論理演算子

真偽値

Rubyでは偽以外が真となっています。

Rubyで偽と扱われるものはfalsenilだけです。

それ以外は真です。

nilfalse 偽以外

論理演算子

and

右辺が真の場合は左辺を返し、偽の場合は右辺を返します。

true && 1 #=> 1
nil && true #=> nil
false && true #=> false

ifの代わりとして使う。

puts "hogehoge" if true # hogehoge
puts true && "hogehoge" # hogehoge

or

右辺が真の場合右辺を返し、右辺が偽の場合左辺を返します。

true || 1 #=> true
nil || 1 #=> 1
false || 1 #=> 1

unlessの代わりとして使う

puts "hogehoge" unless false # hogehoge
puts false || "hogehoge" # hogehoge

not

真の場合はfalse、偽の場合はtrueを返します。

!false #=> true
!nil #=> true
!true #=> false

正当なCSSです!