読者です 読者をやめる 読者になる 読者になる

ばくのエンジニア日誌

技術的なメモなどを書いていきます。

(Ruby)floorとtruncateの違い

ruby
このブログ(ばくのエンジニア日誌)はBAKUNOTEに移転しました。

Numeric#floorとNumeric#truncateの違い

floorは自身以下で最大の整数を返し、truncateは自身から0に近づくうち、最も近い整数を返します。
正の値では結果は同じですが、負の値で結果が異なります。

C:\>irb
irb(main):001:0> 1.2.floor
=> 1
irb(main):002:0> 1.2.truncate
=> 1
irb(main):003:0> -1.2.floor
=> -2
irb(main):004:0> -1.2.truncate
=> -1

公式リファレンス

Numeric#truncate
Numeric#floor