如何将一个哈希数组加到ruby中的数组中

时间:2012-12-08 03:15:54

标签: ruby

有更简单的方法吗?

我在这里尝试做的只是将每个item中的list哈希添加到myarray

myarray = []
list = [{list: [{item: 'item1'},{item: 'item2'}]}, {list: [{item: 'item3'},{item: 'item4'}]}, {list: [{item: 'item5'},{item: 'item6'}]}]

list.each do |list| 
  myarray = myarray + list
end

1 个答案:

答案 0 :(得分:1)

此:

((list.map {|x| x[:list]}).flatten).map{|x| x[:item] if x != nil}

产生这个:

["item1", "item2", "item3", "item4", nil] 

(零是因为你的最后一个元素是

{item: [{item: 'item5'},{item: 'item6'}]}

我认为你的意思是列表:就像其他人一样。