Rubyの変数
⚫︎変数とは
何かしらの値を入れておくための箱。
変数があることで読めるプログラムが書けるようになる。
⚫︎変数と適切な命名
#変数を使わない場合
100 + 50
#変数を使うが変数に意味がない場合
a = 100 #イコールで変数に代入できる
b = 50
a + b
#変数を使い変数に意味がある場合
math_score = 100 #変数に意味を持たせて何をしているかわかる
science_score = 50
math_score + science_score
Rubyの定数とは
⚫︎定数とは
固定された値を入れておくための箱。上書きしない固定された値として使う。
⚫︎定数の特徴
1すべて大文字で記述する
2値の上書きをしない
#変数の上書き
count = 0
count = count+ 1
#定数を使った例
COUNT = 5
変数の文字列展開
⚫︎変数の文字列展開のルール
ダブルクオート内で#{}で囲う
#変数をStringにして連結する場合
score = 70
"国語の点数は" + score.to_s + "点です。"
#文字列内で変数を利用する場合
score = 70
"国語の点数は#{score}点です。"
#シングルクオートだと変数の文字列展開ができない
変数を使った計算処理
⚫︎再代入のルール
イコールの前に四則演算の処理を書く
score = 80
#記述が繰り返される再代入
score = score + 10
#記述が簡単な再代入
score += 10
score -= 5
score *= 5
score /= 5
#変数の役割
変数を使う理由は式の連続性を持たせることです。
言い換えると値を使い回すことができます
。
sum = 0
a = 5
b = 8
sum = a + b
#> 13
sum = sum + a
puts sum
#>18
sum = sum + b
puts sum
#>26
書いていくと無限に使うことができます。
変数の種類
変数 | 書き方 | 説明 |
---|---|---|
ローカル変数 | ruby | 定義した場所からメソッド定義が終わるまで |
インスタンス変数 | @ruby | クラス内で定義されているインスタンスメソッドならok |
クラス変数 | @@ruby | クラス内ならどこでも大丈夫です |
グローバル変数 | $ruby | クラスの外でも使う |
⚫︎補足
上のものほど使用頻度が高いです。
⚫︎コードの例
def calculation
sum = 0 #sumから
sum = a + b
sum = sum + a
end #endまでがsumのローカル変数のスコープ
もしこれで実行すると
undefined local variable or method `sum' for main:Object (NameError)