アンダーバーによる数値の区切り

広告

大きな数字を表示する場合、一般的には3桁毎にカンマを使って区切って表示することが多いと思います。

3,420,500

ただRubyで数値オブジェクトを作成する際にカンマ区切りは使用できません。カンマは別の用途で使用されるためです。そこでRubyでは数値オブジェクトの中に区切り文字としてアンダーバー(_)が使用できるようになっています。

3_420_500

一般的に3桁毎に区切りを入れるため上記のように記述しましたが、区切り文字は単に見た目上だけのものですので好きな位置に記述して頂いて構いません。

また表記上はアンダーバーを使用したとしても次のように数値オブジェクトを作成した場合とまったく同じです。

3420500

例えば次のようにアンダーバー付きの数値オブジェクトを標準出力に出力してみます。

print(3_420_500)

この場合、「3420500」とだけ出力されます。

サンプルプログラム

では簡単なプログラムで確認して見ます。

test2-1.rb

#! ruby -Ku

print(3_420_500, "¥n")

上記のプログラムを「test2-1.rb」として保存します。文字コードはUTF-8です。そして下記のように実行して下さい。

アンダーバーによる数値の区切り

アンダーバー無しの状態で表示されました。

( Written by Tatsuo Ikura )