【Ruby3.x】String::to_r()メソッドの使い方
to_rメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
to_rメソッドは、文字列をRationalオブジェクト(有理数)に変換するメソッドです。Rationalオブジェクトは、分数を正確に扱うためのRubyの組み込みクラスで、例えば1/2や3/4といった形式の数を、浮動小数点数で生じる可能性のある誤差なしに表現できます。
このメソッドは、"10"のような整数、"3.14"のような小数、そして"1/2"のような分数表現の文字列をRationalオブジェクトに変換できます。例えば、文字列"10"は有理数10/1に、"3.14"は314/100に、"1/2"は1/2といった形で変換されます。さらに、"1.2e-3"のような指数表記も、内部的に正確な有理数として扱われます。
もし、数値として認識できない不適切な形式の文字列(例: "hello")が与えられた場合、to_rメソッドはArgumentErrorというエラーを発生させます。したがって、このメソッドを使用する際は、入力される文字列が正しい数値形式であることを事前に確認することが重要です。
文字列から正確な有理数を取得し、その後の計算で浮動小数点数による誤差を避けたい場合に、to_rメソッドは非常に役立ちます。特に、金融計算や科学技術計算など、数値の厳密な扱いが求められるシステム開発の場面で活用されるでしょう。
構文(syntax)
1"1/2".to_r
引数(parameters)
引数なし
引数はありません
戻り値(return)
Rational
文字列を分母と分子からなる有理数(Rational)オブジェクトに変換します。