.flatten
を使用すると、サブ配列の配列を1つの配列に変換するのに便利です。 例:[[1,3],2,[5,8]].flatten
=>[1,3,2,5,8]
さらに[1,[2,nil],3].flatten
を含めると、[1,2,nil,3]
になります。Ruby - 配列をエレガントに平坦化しますが、空のサブ配列を無視しません
この種のメソッドは、.map
メソッドのネスト時に非常に便利ですが、空のサブアレイをどのように考慮しますか?たとえば:[1,[2,3],[],4].flatten
は[1,2,3,4]
を返します...しかし、私は空のサブアレイを追跡する必要がある場合は、多分[1,2,3,0,4]
か[1,2,3,nil,4]
に結果を有効にすると、これを行うための任意のエレガントな方法はありますか?または、個々のサブ配列を繰り返し処理し、それを1つ1つチェックするメソッドを記述する必要がありますか?
は、ネストされた空をチェックする必要がありますか配列、すなわち '[1、[2、3、[]]、4]'? – eiko