こんにちは。Tomoyuki(@tomoyuki65)です。
Rubyでは数値や文字列は全てオブジェクトですよね。
そんなオブジェクトでは、様々なメソッドが使えます。
特に数値オブジェクトや文字列オブジェクトのメソッドの使い方を覚えると、様々な処理を簡単に行うことができるんです!
この記事では、そんな数値や文字列について解説します。
目次
数値オブジェクトを使ってみよう!
数値オブジェクトは、「3」や「3.14」などの値です。
数値オブジェクトのメソッドを使い、数値計算を行なってみましょう。
数値オブジェクトのクラスとメソッドの確認
まずは数値オブジェクト「3.14」の場合のクラスを確認してみましょう。
以下のプログラムを実行してみて下さい。
print 3.14.class
このように、数値「3.14」はFloatクラスに属しているのが確認できます。
では次に数値オブジェクト「3.14」のメソッドを確認してみましょう。
以下のプログラムを実行してみて下さい。
print 3.14.methods
数値オブジェクトのメソッドが沢山出力されましたが、全てを覚える必要はありません。
まずは四則演算に関するメソッドを覚えましょう。
(「+」や「-」などの記号もメソッドです。)
数値オブジェクトの四則演算
四則演算をしてみましょう。
では以下のプログラムを実行してみて下さい。
# 「+」 足し算
puts 1 + 1
# 「-」 引き算
puts 10 - 5
# 「*」 掛け算
puts 3 * 3
# 「/」 割り算
puts 4 / 2
# 「%」 割った余りを求める
puts 10 % 3
# 「**」 べき乗
puts 2 ** 10
5
9
2
1
1024
このように、数値オブジェクトは四則演算ができ、様々な計算が可能です。
分数について
Rubyでは、分数も表すことができます。
では以下のプログラムを実行してみて下さい。
# 「5分の2 + 5分の2」の場合
puts Rational(2, 5) + Rational(2, 5)
# 以下でも同じ結果になります。
puts 2/5r + 2/5r
4/5
四捨五入、小数点以下の切り捨て・切り上げ
Floatクラスのオブジェクトでは、四捨五入、小数点以下の切り捨て、切り上げをするメソッドがあります。
では以下のプログラムを実行してみて下さい。
# 3.14を四捨五入
puts 3.14.round
# 3.14の小数点以下を切り捨て
puts 3.14.floor
# 3.14の小数点以下を切り上げ
puts 3.14.ceil
3
4
文字列オブジェクトを使ってみよう!
次に文字列オブジェクトを使ってみましょう。
文字列オブジェクトの書き方は、文字を「”」(ダブルコーテーション)や「’」(シングルコーテーション)で囲います。
「”」と「’」の違いは、「”」の場合は特殊文字や式展開が使えます。
特殊文字を使った場合
特殊文字を使い、「”」と「’」の違いを確認しましょう。
では以下のプログラムを実行してみて下さい。
# 「"」と「'」を使ってみる。
puts "Hello World"
puts 'Hello World'
# 特殊文字「\n」(改行)を使った場合
puts "Hello\n World"
puts 'Hello\n World'
Hello World
Hello
World
Hello\n World
実行結果の通り、「”Hello\n World”」のように「”」を使用した場合は特殊文字が使えます。
このように、「\n」のような特殊文字をバックスラッシュ記法と呼びます。
「\n」は改行を表すバックスラッシュ記法ですが、他にも色々な種類があります。
気になる方は調べてみて下さいね。
式展開を使った場合
次は式展開を使い、「”」と「’」の違いを確認しましょう。
では以下のプログラムを実行してみて下さい。
# 式展開
puts "100円のりんごを11個買った代金は#{100 * 11}円です。"
puts '100円のりんごを11個買った代金は#{100 * 11}円です。'
100円のりんごを11個買った代金は#{100 * 11}円です。
このように、「”」を使えば文字列の中で計算できます。
また、変数を式展開することも出来ます。
では以下のプログラムを実行してみて下さい。
# 変数を式展開
tanka = 100
syouhin = "りんご"
kosuu = 11
puts "#{tanka}円の#{syouhin}を#{kosuu}個買った代金は#{tanka * kosuu}円です。"
puts '#{tanka}円の#{syouhin}を#{kosuu}個買った代金は#{tanka * kosuu}円です。'
#{tanka}円の#{syouhin}を#{kosuu}個買った代金は#{tanka * kosuu}円です。
このように、文字列中で特殊文字や式展開が使えるので基本的に「”」を使えば良さそうです。
ただ、場合によっては「’」の方が良い場合もありますので、違いや使い方について覚えておきましょう。
また、文字列にもメソッドがあるので使ってみましょう。
例として、以下のプログラムを実行してみて下さい。
# 文字列を結合
puts "好きな食べ物は" + "ハンバーグです。"
# 文字列を繰り返す
puts "りんごを10回言って下さい"
puts "りんご" * 10
りんごを10回言って下さい
りんごりんごりんごりんごりんごりんごりんごりんごりんごりんご
文字列オブジェクトのメソッドも沢山あるので、基本的なものから覚えると良いでしょう。
まとめ
- 数値オブジェクトは四則演算(+, -, *, /, %, **)を覚えよう
- 数値オブジェクトは分数を表すこともでき、Floatクラスでは四捨五入、小数点以下の切り捨て、切り上げについて覚えよう
- 文字列オブジェクトの書き方は「”」と「’」があるので違いを覚えよう
- 「\n」のような特殊文字をバックスラッシュ記法と呼び、他にも色々な特殊文字が存在する
- 「”」を使用した場合は式展開が可能
- 数値オブジェクトや文字列オブジェクトには様々なメソッドがあるので、基本的なものから使い方を覚えよう
- 関連記事
Tomoyuki
最新記事 by Tomoyuki (全て見る)
- 【スト6】モダンキャミィの初心者向けコンボまとめ【STREET FIGHTER 6(ストリートファイター6)】 - 2024年11月10日
- モンハンワイルズでおすすめのオプション設定まとめ【Monster Hunter Wilds】 - 2024年11月4日
- モンハンワイルズでおすすめのグラフィック設定まとめ【Monster Hunter Wilds】 - 2024年11月2日
コメントを残す