Array methods that remove elements nilare called compact . However, this is not enough for this situation, because you have an array of arrays. Also, you want select non-nil arrays or reject arrays that are nil. You can easily combine them as follows:
[[nil, nil], [1, 2], [nil, nil], [nil, nil]].reject { |arr| arr.compact.empty? }
, OR nil s. , , [1, nil, 2], .
, nil, , , . , bang compact, :
.reject { |arr| arr.compact!.empty? }
[[1, 2, nil, 3]] [[1, 2, 3]].
sagarpandya82, all any?, , nil, - nil nil s.
:
original_array = [[nil, nil],[1, nil, 2], [1, 2, 3]]
original_array.reject { |arr| arr.all?(:nil) }
original_array.reject { |arr| arr.compact.empty? }
original_array.reject { |arr| arr.any?(:nil) }
original_array.reject { |arr| arr.compact!.empty? }