0

私は持っている:

hash = {
  key1:12,
  key2:78
}

そして、次のように、このメソッドでハッシュを個別の引数に変換したいと思います。

SomeClass.method(key1:12, key2:78)
4

1 に答える 1

2

Ruby には Objective-C のような名前付き引数はありませんが、ハッシュを渡してエミュレートできます。Ruby 1.9 では、新しい Hash 構文を考えると、これはさらに優れています。

SomeClass.some_method(key1:12, key2:78)

基本的には、some_methodパラメータとしてハッシュを受け入れることを意味します

def SomeClass
  def some_method(args)
    p(args)
  end
end

その後、あなたが呼び出す場合

SomeClass.some_method(key1: 12, key2: 78)

それは実際に意味します

SomeClass.some_method({ key1: 12, key2: 78 })

したがって、ハッシュを渡すことと同等です

hash = {
  key1: 12,
  key2: 78,
}

SomeClass.some_method(hash)
于 2012-10-01T11:06:50.693 に答える