present?メソッドとは
present?メソッドとは
present?とは、真偽判定をしてくれるメソッドの1つで、オブジェクトに値が入っていれば真、入っていなければ偽を返してくれます。
その他のメソッドとの違い。
メソッド | メソッドの意味 |
---|---|
nil? | 変数の値がnilまたは値なしで真 |
empty? | 変数の値が空白("")の場合、真 |
blank? | nil?,empty?が真の時、真 |
present? | blank?が偽の時、真 |
present?の使い方
Rubyでは、nil?とempty?しか標準で使えないが、blank?とpresent?はRailsに搭載されているためRailsでの環境下ではそのまま使用することができる。 * 使い方例
num1 = 10 num2 = "" num3 = true num4 = false num1.present? # => true num2.present? # => false num3.present? # => true num4.present? # => false
他にも配列やハッシュの判定も行える。
arr = Array["dog", "cat", "rabit", "", "cow", ""] for var in arr do # varにarrの要素を順に入れるfor文 p var.present? end
結果は、
true true true false true false
となる。また、これはif文の中でも使うことができる。
arr = Array["dog", "cat", "rabit", "", "cow", ""] for var in arr do if var.present? puts var else puts "値は空です" end end
結果は
dog cat rabit 値は空です cow 値は空です
となります。