从多维数组中删除“空”元素

时间:2011-10-25 15:56:48

标签: ruby-on-rails ruby

我有一个像这样的多维数组

[ [[]], [[1], [2]], [[1, 2]] ]

删除空数组的最佳方法是什么?

现在我只是在做一个array[1..-1]删除第一个元素,但我希望有一个更可靠的方法来实现它。

1 个答案:

答案 0 :(得分:8)

展平每个数组,如果其中没有元素,请将其删除。

arr = [ [[]], [[1], [2]], [[1, 2]] ]
arr = arr.delete_if { |elem| elem.flatten.empty? }
# => [[[1], [2]], [[1, 2]]]