Rubyのデータ型-True、False、Nilを例で説明

truefalse、およびnil特殊なビルトインされているRubyでのデータ・タイプ。これらの各キーワードは、それぞれのクラスの唯一のインスタンスであるオブジェクトに評価されます。

true.class => TrueClass false.class => FalseClass nil.class => NilClass

trueおよびfalseはRubyのネイティブブール値です。ブール値は、trueまたはnottrueの2つの可能な値のいずれかになり得る値です。オブジェクトtrueは真実をfalse表し、反対を表します。変数をtrue/falseに割り当て、それらをメソッドに渡し、通常は他のオブジェクト(数値、文字列、配列、ハッシュなど)と同じように使用できます。

nilは値がないことを示す特別な値です–これはRubyの「何もない」を指す方法です。nilオブジェクトに遭遇するときの例は、存在しないか見つからないものを要求するときです。

hats = ["beret", "sombrero", "beanie", "fez", "flatcap"] hats[0] => "beret" # the hat at index 0 hats[2] => "beanie" # the hat at index 2 hats[4] => "flatcap" # the hat at index 4 hats[5] => nil # there is no hat at index 5, index 5 holds nothing (nil)

ゼロは何もないわけではありません(それは数字であり、何かです)。同様に、空の文字列、配列、およびハッシュは何でもありません(これらはオブジェクトであり、たまたま空です)。このメソッドnil?を呼び出して、オブジェクトがnilであるかどうかを確認できます。

0.nil? => false "".nil? => false [].nil? => false {}.nil? => false nil.nil? => true # from the example above hats[5].nil? => true

Rubyのすべてのオブジェクトにはブール値があります。つまり、ブールコンテキストではtrueまたはfalseのいずれかと見なされます。この文脈で真と見なされるものは「真実」であり、偽と見なされるものは「偽」です。Rubyでは、「偽り」であるだけでfalsenil他のすべては「真実」です。

詳しくは:

  • Rubyの学習:ゼロからヒーローへ
  • 慣用的なRuby:美しいコードを書く
  • 単純なRubyスクリプトを使用してデータベーステーブルをCSVにエクスポートする方法