Ruby - 基本的な文法 - Integer Float 数値


 クラウディア


1. 概要
2. それぞれへの変換
3. 3桁ごとのカンマを表示
4. 参考サイト

1. 概要

 「ruby」には、いわゆる型というものは存在しないということで。  数値としての整数型・浮動小数点型に相当するものとして、「Integer」と「Float」のクラスがあるとのこと。  また、「Integer」「Float」は「Numeric」という数値を表す抽象クラスの派生クラスになるようです。  それぞれの詳細は、参考サイトの方でどうぞ。

2. それぞれへの変換

 正数と浮動小数点数とを相互に変換するには、それぞれ「to_f」、「to_i」というメソッドを使用します。

#!/usr/bin/env ruby

f = 1.0
i = 2

puts('f = '+"#{f}")
puts('i = '+"#{i}")

puts("#{(f/i).to_f}")
puts("#{(f/i).to_i}")
 これを実行すると以下のような結果となります。

f = 1.0
i = 2
0.5
0

3. 3桁ごとのカンマを表示

 「Ruby on Rails」には「active_support/core_ext/numeric/conversions」というそのまま使えるモジュールがあるらしいのですが、今のところ「Ruby on Rails」をインストールする予定がない。  「sprintf」にもその機能がないと、参考サイトにはっきりうたっています。  他の参考サイトに、にうってつけのものがありました。

#!/usr/bin/env ruby

puts(123456789.to_s.reverse.gsub( /(\d{3})(?=\d)/, '\1,').reverse)
 これを実行すると以下のような結果となります。

123,456,789

4. 参考サイト

 本ページは、下記のサイトを参考にさせていただきました。
Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Integer クラス 」
「Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Float クラス 」
「Ruby 2.5.0 リファレンスマニュアル > sprintf フォーマット」
「数字の3桁区切り カンマ【 , 】の着脱」
 ↑(2026年3月31日、リンク切れになっています)