更新日:
【Ruby】 プログラミングの基礎の変数について学んでみよう。
変数とは、オブジェクトに付ける名札のようなものです。
rubyには様々なオブジェクトがありますが、変数を使えばその一つ一つに名札をつけられます。
1
変数名 = オブジェクト
例えば、以下のコード内の=
は「等しい」という意味ではなく「代入」という意味で使われます。 ここでは右辺の値を左辺の変数に代入するという意味になります。
1
2
#「プログラマン」という文字列オブジェクトに「name」という名札をつける
name = "プログラマン"
変数を宣言する時に、変数には「小文字から始める」や「スペースは入れられない」という命名規則があるので注意しましょう。
変数を使うメリットとは?
まずオブジェクトを識別する時に名前があるとわかりやすいというメリットがあります。
先ほどのコードを見てみましょう。
1
name = "ぴっか"
ここではぴっか
という文字列オブジェクトがあります。
name
という変数に代入することで、この文字列は名前なんだなとすぐに理解できますよね。
また下記のようなコードがあったとします。
1
2
3
p "彼の名前はプログラマンです。"
p "プログラマンはプログラミングがすごい得意です。"
p "プログラマンに聞けば何でも教えてくれます。"
ここでは3回プログラマン
というワードが使われています。
もし名前をプログラマン
ではなくぴっか
という別の名前に変えたい時はどうなるでしょう?そうですね、使われている3箇所全てを変えなくてはなりません。
今回は3箇所だけなのでまだいいですが、これが100箇所となるとかなり大変ですよね。
しかし、下記のコードのように対象の文字列をname
という変数に代入すれば、名前の変更があった場合には、name
の値を変更するだけで良くなります。
1
2
3
4
5
6
7
8
9
10
11
irb(main):001:0> name = "プログラマン"
=> "プログラマン"
irb(main):002:0> name = "ぴっか" # 名前を変更する
=> "ぴっか"
irb(main):003:0> p "彼の名前は#{name}です。"
=> "彼の名前はぴっかです。"
irb(main):004:0> p "#{name}はプログラミングがすごい得意です。"
=> "ぴっかはプログラミングがすごい得意です。"
irb(main):005:0> puts "#{name}に聞けば何でも教えてくれます。"
=> "ぴっかに聞けば何でも教えてくれます。"
変数を宣言した1箇所だけ変更すれば全てが変わりますよね。こういった具合で変数というのはとても便利です。上記のコードでは文字列の中に変数を出力出来る式展開を使っています。式展開について詳しくは式展開について徹底解説!を参考にしてください。
また、再代入ができるという特徴もあります。
一度宣言してもそのあとのコードで再度同じ変数名で宣言すれば後から宣言したものに書き換わります。 これは何度でも変更が可能です。
rubyだけでなくプログラミングには必ず使用するものなので、しっかりと理解しておきましょう!初学者の方は、こちらの参考書を読んで変数について理解を深めましょう。
この記事のまとめ
- 変数とは、オブジェクトに付ける名札のようなもの
- 「小文字から始める」や「スペースは入れられない」という命名規則がある
- 繰り返し使われている箇所に使用すると便利!