将哈希列表转换为方法的自变量

问题描述

| 我有基于哈希的参数。
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中做到了这一点,以便密钥顺序保留在哈希中)