配列引数
複数の引数を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
http://magazine.rubyist.net/?0041-200Special-kwarg
ブロック引数、Procの引数に関しては下記のQiitaの記事が非常にわかりやすかったのでぜひご一読下さい。
http://qiita.com/kidachi_/items/15cfee9ec66804c3afd2