search
LoginSignup
1

More than 1 year has passed since last update.

posted at

Rubyでの「文字列型(String)と整数型(integer)について」

最初に

カレンダー企画2020の9日目
プログラミングの勉強を始めて3ヵ月程経ったので学んだことのメモをアウトプットとして記事に残します。
これからプログラミングの世界に入る人の手助けになれたら嬉しい限りです。
間違っていたり、言葉が違っていたり、誤解されるような言葉があったら教えてください^^
言葉を長々と読みづらかったら申し訳ありません。少しずつなれてがんばります。

Rubyでの「文字列型(String)と整数型(integer)について」

Rubyには色々型があります。
その中の2つをまとめます。

demo.rb
puts 8
puts "8"

このようにして出力を行うと

ターミナル
$ ruby demo.rb
8
8

となります。
一見ターミナル上ではとくに変わりがないと感じますね!
実はこの時点ですでに違う扱いになっているのです。
demo.rbでの違いは("")これで囲まれているか否かですね。

囲まれてない方 puts 8の8は整数型となります。
囲まれている方 puts "8"の8は文字列型となります。

違いがわかるように少しrbファイルを変更します。

demo.rb
puts 8 + 8
puts "8 + 8"
puts "8" + "8"

同様に実行すると、、、

ターミナル
$ ruby demo.rb
16
8 + 8
88

上記の結果になる!
1番目:数字として認識されているので足し算が行われてその結果が出力されます。
2番目:文字として認識さているのでそのまま出力される。(数字として認識にはならないので計算はされない)
3番目:8という文字と8という文字を +(この時「つなぐ」意味になる)した結果が出力される

少し違いが分かりましたか?
今後コードを記述する時にこの違いが大事になります。

数字として認識させたいのか?
文字として認識させたいのか?
それによって使う型が変わって来るということです!

これは例では数字でしたがもちろん文字でも使えます!

demo.rb
puts "tanaka" + "tarou"
ターミナル
$ ruby demo.rb
tanakatarou

となります。このように苗字と名前を繋げて表示できます。
私はアプリケーション作成の時にこれはよく使いました!

何かの会員登録とかをする時に姓と名を別々で入力することありませんか?
それを一括表示させる時にこれを応用すると綺麗にできます。

最後に

初期の段階で私はこれを理解したつもりになっていてアプリケーションを作成している時に躓いたのを覚えています。今整数型?文字列型?どっちが使えば効率的なのか??みたいに^^;
なのでまとめて自分なりのメモとして残しておきます^^

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
1