问题描述
|
我有基于哈希的参数。
method1(:test=>[:arg1,:arg2 => :something])
我需要以以下格式将:test
作为参数传递给另一个方法
来自A:
[:arg1,{:arg2=>:something}]
到B:
method2 :arg1,:arg2=>:something
我如何从A到B?
解决方法
怎么样?
args = {:test => [:arg1,:arg2 => :something]}
method1(args)
method2(*args[:test])
, 如果ary = [:art1,{:arg2 => :something}]
,那么method2 *ary
就可以了。
, 如果您的哈希中没有很多东西,您可以循环遍历这些键并取消引用它们。要使它起作用,必须执行的操作是:
您必须按想要的顺序添加键/值。
使用1.9(我相信他们在1.9中做到了这一点,以便密钥顺序保留在哈希中)