Menu
Coddy logo textTech

メソッドの引数

CoddyのRubyジャーニー「基礎」セクションの一部 — レッスン 49/88。

メソッドは、入力を受け取ることができるようになると、より強力になります。パラメータを使用すると、メソッドにデータを渡すことができ、さまざまな状況に対して柔軟で再利用可能になります。

パラメータを追加するには、メソッド名の後の括弧の中に記述します:

def greet(name)
  puts "Hello, #{name}!"
end

greet("Alice")  # 出力: Hello, Alice!
greet("Bob")    # 出力: Hello, Bob!

パラメータnameは、メソッド内では変数のようになります。greet("Alice")を呼び出すと、その呼び出しに対して値"Alice"がnameに割り当てられます。

メソッドは、カンマで区切られた複数のパラメータを受け取ることができます:

def add(a, b)
  puts a + b
end

add(5, 3)   # 出力: 8
add(10, 7)  # 出力: 17

順序が重要です。最初の引数は最初のパラメータに、2番目の引数は2番目のパラメータに、といった具合に渡されます。メソッドが期待する引数の数と正確に一致させる必要があります。そうしないと、Rubyはエラーを発生させます。

challenge icon

チャレンジ

簡単

introduce という名前のメソッドを定義してください。このメソッドは nameage という2つの引数を取ります。メソッドは以下の形式でメッセージを出力する必要があります:

My name is [name] and I am [age] years old.

2つの入力を読み取ります:

  1. 名前を表す文字列
  2. 年齢を表す整数

メソッドを定義した後、入力値を使用してそのメソッドを呼び出してください。

例えば、入力が Alice25 の場合、出力は以下のようになります:

My name is Alice and I am 25 years old.

入力が Bob30 の場合、出力は以下のようになります:

My name is Bob and I am 30 years old.

チートシート

メソッドは、柔軟性と再利用性を高めるためにパラメータを受け取ることができます。パラメータは、メソッド名の後の括弧内に記述します。

def greet(name)
  puts "Hello, #{name}!"
end

greet("Alice")  # 出力: Hello, Alice!

パラメータはメソッド内では変数の役割を果たします。メソッドを呼び出す際、引数の値がパラメータに代入されます。

メソッドは、カンマで区切ることで複数のパラメータを受け取ることができます。

def add(a, b)
  puts a + b
end

add(5, 3)   # 出力: 8

引数の順序は重要です。最初の引数は最初のパラメータに、2番目の引数は2番目のパラメータに、といった具合に渡されます。メソッドが期待する引数の数と正確に一致させる必要があります。

自分で試してみよう

# 入力を読み込む
name = gets.chomp
age = gets.chomp.to_i

# TODO: 以下にintroduceメソッドを定義する


# 入力値を使用してメソッドを呼び出す
introduce(name, age)
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン