Ruby
更新日:
【Ruby】 to_sメソッドの使い方を理解しよう
to_sメソッドとは、文字列以外のオブジェクトを文字列オブジェクトに変換するメソッドです。
to_sメソッドの構文 -->
1
オブジェクト.to_s
例えば、以下のようにnum
という変数に数字の1を代入してnum
を出力すると「1」が出力されます。
irb | to_sメソッドの使用例 -->
1
2
3
4
5
6
num = 1
p num
=> 1
num.to_s
=> "1"
このnum
に対し、to_sメソッド
を使った結果は"1"
と文字としての1として出力されます。このようにto_sメソッド
を使用すると、数値オブジェクトなどを文字列オブジェクトに変換することが出来ます。
to_sメソッドとは?使う場面とは?
to_sメソッドの使用する場面やその他の変換系のメソッドを解説します。
どんな時に使うか
例えば下記のようなコードがあるとします。
文字列の結合のコード -->
1
2
num = 25
puts "私は" + num + "歳です。"
このコードを実行するとエラーになります。
どうしてエラーが出るかというと文字列オブジェクトと数値オブジェクトは結合することができないからです。
もし今回数値オブジェクトとして定義したnumという変数を文字列に結合したい場合は数値オブジェクトから文字列オブジェクトに変換する必要があります。
irb | 文字列の結合を実行 -->
1
2
3
4
5
num = 25
num = num.to_s
puts "私は" + num + "歳です。"
# 文章が結合して表示される
私は25歳です。
一度numは数字の2が入った数値オブジェクトとして定義されました。
それを2行目でto_sメソッドを使い、文字列オブジェクトとして上書きします。
そうすることにより「2」という文字に変換されたので、文字列同士で結合できたというわけです。
その他の変換系メソッド
Rubyには他にもオブジェクトの種類を変換するメソッドが用意されています。
メソッド | 変換する内容 | 参照 |
---|---|---|
to_i | 数値オブジェクトに変換 | 参照記事 |
to_f | Floatクラス(浮動小数点数)に「変換 | 参照記事 |
to_sym | シンボルに変換 | 参照記事 |
to_h | ハッシュオブジェクトに変換 | 参照記事 |
to_a | 配列オブジェクトに変換 | 参照記事 |
この記事のまとめ
- to_sメソッドは、文字列オブジェクトに変換するメソッドのこと
- 数値オブジェクトと文字列オブジェクトを連結させたいときなどに使用する
- Rubyの用語やコードの読み方に不安があるという方は、この参考書が参考になるよ!
役に立ったらSHARE♪