【数値リテラル】Rubyの基礎【Integer,Float,Enumeratorオブジェクト】

Ruby

今回はRubyの数値リテラルについて学習方法を解説していきます。

以前の記事でStringとSymbolについて説明してますので、そちらもご確認ください。

今回は数値リテラルについて解説していきます。

スポンサーリンク

IntegerとFloat

整数がInteger、小数はFloatです。

 pry(main)> 1.class
=> Integer
 pry(main)> 1.3.class
=> Float

四則演算

四則演算は以下のように記載、計算されます。

Floatが計算式にあると結果もFloatになります。

[31] pry(main)> 1 + 1
=> 2
[32] pry(main)> 2 - 1
=> 1
[33] pry(main)> 100 * 1.05
=> 105.0
[34] pry(main)> 4 / 2
=> 2

その他の計算用演算子、メソッド

その他にも計算に使用できる演算子、メソッドがあります。

# 余りの計算
[35] pry(main)> 5 % 2
=> 1
# 乗数の計算
[36] pry(main)> 5 ** 2
=> 25
# 四捨五入
[37] pry(main)> 1.5.round
=> 2
[38] pry(main)> 1.4.round
=> 1
# 切り上げ
[39] pry(main)> 1.1.ceil
=> 2
# 切り捨て
[40] pry(main)> 1.1.floor
=> 1

Enumeratorオブジェクト

timesメソッドをIntegerに使用することで、生成できます。
こちらは繰り返し処理する際に使用されたりします。

[42] pry(main)> 3.times do |i|
[42] pry(main)*   puts i
[42] pry(main)* end
0
1
2
=> 3

doからendまでの処理を「ブロック」と呼びます。
上記の例では「i」という変数にEnumeratorオブジェクトが渡され、Enumeratorオブジェクトの中身を一つづつ出力しています。

以下のように「{}」で囲むことで記載することもできます。

[43] pry(main)> 3.times { |num| puts num }
0
1
2
=> 3

# よくない書き方 「{}」の前後はスペースを入れましょう
[44] pry(main)> 3.times {|num| puts num}
0
1
2
=> 3

使い分け

上記で説明したように「do」「end」で記載する方法と「{}」での記載方法があります。

では実際にはどのように使い分けをするのでしょう。
チームで仕事している際はコーディング規約があればそれに従いますが、特にルールがなければ1行で記載できるものについては「{}」の記載方法を使用し、2行以上になるものについては「do」「end」を記載するのが一般的にRubyコミュニティーで使用されているルールになります。

フリーランスを目指すなら【テックパートナーズカレッジ】

未経験者向けWEBスクール【SHElikes】

コメント