2012-01-19 40 views

回答

10

要查找指数:

array.index{ |item| item.parent_id == 55 } 

要查找的项目:

array.find{ |item| item.parent_id == 55 } 
0
array.collect{|a| a[:parent_id]==55 ? a : nil}.compact! 

应该做的工作。首先在新数组中收集符合条件的所有元素,然后删除误报(无)元素。

+0

如果你只是使用select或find_all的紧凑的语句是不需要的,所以它应该快一点。 – acoffman

0

我会使用可枚举#选择Docs

results = my_array.select do |item| 
    item[:parent_id] == 55 
end 
相关问题