2014-12-13 89 views
1

我有一個哈希:到嵌套哈希添加元素紅寶石

a = { 21 => { 3 => {:x => 5, :y => 6}}} 

我想另一個值添加到關鍵的「21」,這樣的哈希看起來像這樣:

a = { 21 => { 3 => {:x => 5, :y => 6}, 4 => {:x => 8, :y => 7}}} 

我怎樣才能做到這一點?

回答

2

您想要將鍵值對添加到散列(a[21])。 a[21]會給你內在的哈希對象。

a = { 21 => { 3 => {:x => 5, :y => 6}}} 
a[21] 
# => {3=>{:x=>5, :y=>6}} 

將鍵,值與內部哈希關聯將解決您的問題。

a[21][4] = {:x => 8, :y => 7} 
a 
# => {21=>{3=>{:x=>5, :y=>6}, 4=>{:x=>8, :y=>7}}} 
+0

沒有解釋? – 2014-12-13 01:16:12

1

另一種方法是:

a[21].update({ 4=>{:x => 8, :y => 7} }) 

a #=> {21=>{3=>{:x=>5, :y=>6}, 4=>{:x=>8, :y=>7}}}