導入
「挨拶をする」「合計を計算する」といった処理は、プログラムの中で何度も使いたくなります。そのたびに同じコードを書き写すのではなく、名前を付けて再利用できるようにしましょう。
説明
graph LR A["呼び出し側: greet(\"太郎\")"] --> B["def greet(name) ... end"] B --> C["戻り値を返す"] C --> A
def メソッド名 ... end でメソッドを定義します。
def greet
"こんにちは!"
end
puts greet
def add(a, b)
a + b
end
puts add(3, 5)
Ruby のメソッドには大事な特徴があります。メソッドの最後に評価された式の値が、自動的に戻り値になります(明示的に return を書かなくてよい)。add(a, b) では最後の行 a + b の結果がそのまま戻り値です。これを暗黙のreturnと呼びます。
やってみよう
add の中身を a - b や a * b に変えて、戻り値がどう変わるか確かめましょう。新しいメソッドを1つ自分で定義してみてください。
演習
double(n) というメソッドを定義し、引数を2倍にして返すようにしてください。puts double(7) の結果(14)を表示してください。
ヒント1を見る
def double(n) n * 2 end のように定義します。
ヒント2を見る
最後の式がそのまま戻り値になるので return は不要です。