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

Aar*_* Fi 1 ruby hash

这段代码当然有效:

@x = { :all => { :x => 1, :y => 2 } }
Run Code Online (Sandbox Code Playgroud)

但这不是:

@x = { :abc, :all => { :x => 1, :y => 2 } }
Run Code Online (Sandbox Code Playgroud)

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

Tob*_*ias 6

是的,这里:

@x = { :all => tmp = { :x => 1, :y => 2 }, :abc => tmp }
Run Code Online (Sandbox Code Playgroud)