getsメソッドでの取り出し方色々

ブログを書いている人 Ruby、Ruby on Rails

Rubyカテゴリを作っていないので、とりあえずrailsカテゴリで作成・・・

 

さて、getsメソッドを使うと、キーボードで入力した値を受け取ることが出来ます。

しかし、細かく見ていくと色々と気にしなければいけないことがあるので、それぞれの違いをメモっておきます。

スポンサーリンク

gets

入力した内容を、文字列で改行付きで返す。

putsで出力すると文字列なのか改行つきなのかよく分からないですが、pで出力するとよく分かります。

gets.chomp

入力した内容を、文字列で改行を外して返す。

改行を意味する、「\n」が消えました。

 

改行があって困る場面は現実にあるのかどうかは知りませんが、条件式に使うときは注意が必要です。

改行がついていると、同じかどうかの判定でfalseが返ります。

chompで改行を外すことで、trueになりましたと。

gets.to_i

入力した内容を数値型で改行なしで返す。

“”が消えましたと。

改行の「\n」もないです。

 

文字を入力すると・・・

0が返る。

gets.split

splitメソッドが文字列を分割して配列を返してくれます。

とりあえず例としてはこんな感じ。

今回、splitの引数は何もないので、空文字部分で分割しています。

 

また、配列にせず、それぞれ変数に入れたい場合はこんな感じ。

aに”blue”、bに”red”が入りました。

gets.split.map(&:to_i)

入力した内容を、数値型で配列を返したい場合。

空文字部分で区切られ、数値型で配列に入りました。

 

同じように変数にそれぞれ入れることも可能。

 

他にも色々取り出し方がありそうですが、最近使っているのはこれくらい。

 

それでは!

コメント

タイトルとURLをコピーしました