文字列、数値、配列の変換手法【Ruby/to_i/to_f/to_s/to_a】

mycompilerでコード編集からコンパイル、実行まで行えます。

Rubyで「文字列→数値、数値→文字列、文字列→配列」と変換する手法、変換時の注意点を学びましょう。

文字列、数値、配列の変換手法

このページで学習する変換手法は以下の3つです。

変換前変換後
to_i文字列整数
to_f文字列小数
to_s数値文字列
to_a範囲オブジェクト
ハッシュ
配列

・to_i(文字列→整数)/ to_f(文字列→小数)

まずは文字列を数値に変換する2つのメゾッド『to_i』『to_f』を使ってみましょう。

#文字列→数値の変換手法(to_i/to_f)

puts "to_i 実行例"
puts "123.456".to_i

puts "to_f 実行例"
puts "123.456".to_f
#実行結果

to_i 実行例
123
to_f 実行例
123.456

ここで『to_i』『to_f』を使う際の注意点を解説します。

文字列を数値に変換する際『数値+文字列』は正確に変換できますが、『文字列+数値』の時には『0』しか出力できないことを覚えておきましょう。

#文字列→数値変換の注意点

puts "to_i 実行例"
puts "123.456+文字列".to_i
puts "文字列+123.456".to_i

puts "to_f 実行例"
puts "123.456+文字列".to_f
puts "文字列+123.456".to_f
#実行結果

to_i 実行例
123
0
to_f 実行例
123.456
0.0

・to_s(→文字列

次は数値→文字列の変換手法です。

こちらは数値へ変換する時のような中点はないのので非常にシンプルです。

#文字列→数値の変換手法(to_s)

puts "123.456".to_s
#実行結果

123.456

・to_a(範囲、ハッシュ→配列

範囲オブジェクト、ハッシュを配列に変換する手法です。

#範囲オブジェクト、ハッシュ→配列の変換手法(to_a)

puts "範囲→配列"
puts (1..3).to_a

puts "ハッシュ→配列"
example={hash1:"1",hash2:"2",hash3:"3"}
puts example.to_a
#実行結果

範囲→配列
1
2
3
ハッシュ→配列
hash1
1
hash2
2
hash3
3

その他の『to_#』変換メゾッド

上記で紹介した以外にも『to_#』の形で様々な変換メゾッドがあります。

勉強段階で使うことは少ないので、細かい使い方については省略します。

変換前変換後
to_c文字列複素数
to_r文字列有理数
to_h配列ハッシュ
to_sym文字列シンボル

最低限『to_i』『to_f』『to_s』『to_a』の4つは覚えておきましょう。

コメント