【Ruby3.x】Float::truncate()メソッドの使い方
truncateメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
truncateメソッドは、小数点以下の数値を切り捨てて整数部分のみを返すメソッドです。このメソッドは、数値を常に0に近づける方向に丸めるという特徴を持っています。具体的には、正の浮動小数点数に対しては小数点以下を単に切り捨て、負の浮動小数点数に対しても、その絶対値が小さくなる方向に、つまり0に近い整数に丸めます。
このメソッドが返す値は、元の数値がFloat型であっても常にInteger型となります。例えば、3.14.truncateを実行すると、結果として整数3が得られます。同様に、3.99.truncateも3を返します。負の数の場合も同様で、-3.14.truncateは-3を、-3.99.truncateも-3を返します。これは、どちらの数値も0に近づける方向に丸めると-3になるためです。
Rubyには、数値を丸めるための複数のメソッドが存在しますが、truncateはそれらの中でも特に「0に近づける」という明確な動作をします。例えば、floorメソッドは常に小さい方の整数へ、ceilメソッドは常に大きい方の整数へ、roundメソッドは四捨五入を行います。これらのメソッドとtruncateの動作の違い、特に負の数に対する挙動の違いを理解することは、正確な数値処理を行う上で非常に重要です。
truncateメソッドは、Rubyの組み込みクラスであるFloatクラスのインスタンスメソッドとして提供されています。これにより、任意のFloat型の数値オブジェクトに対して直接このメソッドを呼び出し、小数点以下を切り捨てた整数値を取得することが可能です。
構文(syntax)
13.14159.truncate
引数(parameters)
ndigits = 0
- ndigits: 保持する小数点以下の桁数を指定する整数。デフォルトは0。
戻り値(return)
Integer
Floatクラスのtruncateメソッドは、浮動小数点数から小数部分を切り捨てた整数値を返します。