LoginSignup
8

More than 5 years have passed since last update.

Rubyのメソッドの引数あれこれメモ

Last updated at Posted at 2013-11-20

配列引数

複数の引数を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

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8