コンテンツへスキップ

nil?

疑似メソッドnil?は、式の実行時型がNilであるかどうかを判定します。例えば

a = 1
a.nil? # => false

b = nil
b.nil? # => true

コンパイラがそれを認識しており、if var.nil?(...)で説明されているように型情報に影響を与える可能性があるため、疑似メソッドです。

is_a?(Nil)と記述するのと同じ効果がありますが、より短く、読みやすく、書きやすいです。