Rubyのメソッドの引数あれこれメモ
配列引数
複数の引数を1つの配列として扱うにはアスタリスクをつける
def my_mthod(*args) args end my_method(1, 'hoge', 'three') #=> [1, 'hoge', 'three']
キーワード引数
Ruby 2.0からの機能(同じことは1.9系とかでもできるがハッシュを展開しないとダメ)
def my_method(name: 'test user') name end my_method(name: "test new user") #=> "test new user"
メソッド定義の際の引数にdef my_method(:name => 'test user')って書き方はできないみたい。 ただ、メソッドを呼び出す際の引数に上記は可能。つまりmy_method(:name => 'test new user')はOK
Rubyist Magazine - Ruby 2.0.0 のキーワード引数
ブロック引数、Procの引数に関しては下記のQiitaの記事が非常にわかりやすかったのでぜひご一読下さい。