他のプログラミング言語を学習されたことのある人なら、boolで真偽値(true,false)を表すことはご存知かと思いますが、Rubyでは真偽値もオブジェクトとして扱われます。
[43] pry(main)> true.class
=> TrueClass
[44] pry(main)> false.class
=> FalseClass
主にif文の分岐の際に用いられます。
文章だとピンと来ない方もいらっしゃると思うので、実際のコードをみてみましょう。
比較演算子
文字通り値を比較する際に使用される演算子でイコールかどうか知りたい場合は「==」を使用します。
同じ場合は「true」違う場合は「false」になります。
[45] pry(main)> 1 == 1
=> true
[46] pry(main)> 2 == 3
=> false
値が違うことを知りたい場合には「!=」を使用します。
[47] pry(main)> 2 != 2
=> false
[48] pry(main)> 2 != 3
=> true
true,falseを反転させる
以下のようにしてtrueとfalseを反転させることができます。
[49] pry(main)> true_flg = true
=> true
[50] pry(main)> false_flg = false
=> false
[51] pry(main)> !true_flg
=> false
[52] pry(main)> !false_flg
=> true
nilメソッド
最後に値がnilであるかの判定をすることが出来るnilメソッドの例をみてみましょう。
[53] pry(main)> flg = nil
=> nil
[54] pry(main)> flg.nil?
=> true
[55] pry(main)> flg = true
=> true
[56] pry(main)> flg.nil?
=> false
https://amzn.to/2KXix16
コメント