Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Numeric::finite?()メソッドの使い方

finite?メソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

finite?メソッドは、数値が有限であるかどうかを判定するメソッドです。

RubyのNumericクラスに属するこのメソッドは、数値オブジェクトが無限大(Infinity)や非数(NaN: Not a Number)ではない、通常の範囲に収まる値である場合にtrueを返します。もし値が無限大や非数である場合はfalseを返します。

具体的には、通常の整数(Integerクラスのオブジェクト)や、一般的な浮動小数点数(Floatクラスのオブジェクト)は常に有限であると見なされます。そのため、これらの値に対してfinite?メソッドを呼び出すと常にtrueが返されます。

これに対し、浮動小数点数の計算において生じる可能性のある特殊な値、例えばFloat::INFINITY(正の無限大)、-Float::INFINITY(負の無限大)、またはFloat::NAN(非数)は有限ではありません。これらの特殊な値に対してfinite?メソッドを実行すると、結果としてfalseが返されます。

このfinite?メソッドは、特に浮動小数点数を含む計算結果を扱う際に非常に有用です。計算によって予期せず発生する無限大や非数を検出し、プログラムがこれらの特殊な値を適切に処理できるよう、入力値の検証や結果の妥当性チェックに利用することができます。これにより、数値データの信頼性を高め、予期せぬエラーを防ぐことが可能です。

構文(syntax)

11.finite?
2(1.0).finite?
3Float::INFINITY.finite?
4Float::NAN.finite?

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

関連コンテンツ

関連プログラミング言語