Ruby哈希初始化:这种漂亮可能吗?

时间:2009-04-14 23:18:18

标签: ruby hash

此代码当然有效:

@x = { :all => { :x => 1, :y => 2 } }

但这不是:

@x = { :abc, :all => { :x => 1, :y => 2 } }

有什么方法可以做我想要的吗?即我希望哈希中的两个键分别引用相同的(a的副本)值。但我只想指定一次值。

2 个答案:

答案 0 :(得分:6)

是的,在这里:

@x = { :all => tmp = { :x => 1, :y => 2 }, :abc => tmp }

答案 1 :(得分:0)

以下内容如何:

@x = { :all => tmp = { :x => 1, :y => 2 }, :abc => tmp.reject {|k,v| false} }