コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

Rubyで 0 を 判定するなら zero? のほうがスマート

若干ポエム寄りな話。

環境

$ ruby -v
ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin18]

ドキュメント曰く

自身がゼロの時、trueを返します。そうでない場合は false を返します。 - instance method Numeric#zero? (Ruby 2.6.0)

使う利点

  • if a == 0 よりも if a.zero? のほうが見え方がスマート
  • そもそもNumericなので数値以外に使うとExceptionを発行するので文字列が変数に混入するなどに気づきやすい
  • 数値であることを明確にできるので後続処理が書きやすい

関連リンク