本記事では、Rubyのメソッドとはどんなものなのか、使用例とともに詳しく解説していきます。
メソッドとは
メソッドは、ある特定の処理を実行し、その結果を返すステートメントの集合体です。
メソッドを使用すると、コードを再入力することなく、コードを再利用することができます。
メソッドの定義と呼び出し
メソッドを定義する際は、defとメソッド名を記述し、endで閉じます。
またメソッド名は小文字で記述します。
メソッドを呼び出す際は、そのメソッド名を書くだけでOKです。
# メソッドの書き方
def メソッド名
処理
end
# 使用例
def greet
puts "Hello"
end
greet
# Hello
メソッドにパラメータを渡す
Rubyのパラメータの受け渡しをするには、パラメータを括弧()で囲んで記述します。
# パラメータの受け渡し
def メソッド名(var1, var2)
処理
end
# 使用例
def greetings(var1 = "Hello", var2 = "こんにちは")
puts "アメリカは#{var1}"
puts "日本は#{var2}"
end
greet
greet "Good evening", "こんばんは"
# アメリカはHello
# 日本はこんにちは
# アメリカはGood evening
# 日本はこんばんは
パラメータの数
Ruby では、可変個数の引数を受け取るメソッドを定義することができます。
メソッドを定義する際に、渡すべきパラメータの数が分からない場合に便利です。
def greetings(*var)
puts "パラメータの数は#{var.length}個"
for i in 0...var.length
puts "パラメータの中身は#{var[i]}"
end
end
greetings "Hello", "こんにちは"
greetings "你好"
# パラメータの数は2個
# パラメータの中身はHello
# パラメータの中身はこんにちは
# パラメータの数は1個
# パラメータの中身は你好
メソッド内のreturn
1つまたは複数の値を返すために使用されるReturnステートメント。
デフォルトでは、メソッドは常にメソッドの本体で評価された最後のステートメントを返します。
def cal
x = 10
y = 20
sum = x + y
return sum
end
puts "計算結果は#{cal}"
# 計算結果は30