【问题标题】:How to insert a new hash into existing hash in ruby如何将新哈希插入到ruby中的现有哈希中
【发布时间】:2012-03-06 10:51:29
【问题描述】:

我有两个哈希:

p = {"name"=>"TRICHI", "subdistrict"=>{"WANDIWASH"=>"1234"}}
q = {"name"=>"VELLORE", "subdistrict"=>{"WANDIWASH"=>"4183"}}

我需要把它变成

r = [{"name"=>"VELLORE", "subdistrict"=>{"WANDIWASH"=>"4183"}}, 
    {"name"=>"TRICHI", "subdistrict"=>{"WANDIWASH"=>"1234"}}] 

【问题讨论】:

标签: ruby-on-rails ruby hash


【解决方案1】:

我猜你想要这个:

r = [] << p << q
# or r = [p, q]
# either way you'll get:
#  [ {"name"=>"VELLORE", "subdistrict"=>{"WANDIWASH"=>"4183"}},
#    {"name"=>"TRICHI", "subdistrict"=>{"WANDIWASH"=>"1234"}}  ]

这样,您将拥有一个 array 和 2 个 hashes

【讨论】:

    【解决方案2】:

    正如蒂姆所指出的,r 似乎不是一个哈希,也许你的意思是一个数组,在这种情况下你可以这样做

    r = [p,q]
    

    r = []
    r << p
    r << q
    .. keep going for any other entry you want to push into r
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-22
      • 1970-01-01
      • 2014-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-01
      相关资源
      最近更新 更多