##はじめに
オリジナルアプリの改修をしてまして、アルゴリズムを組んでいたら、とても便利なメソッドを見つけましたので記事にしておきます。
##compactメソッド
compactメソッドは配列に含まれるnilを取り除いてくれるものです。
array = [1, 2, 3, 4, 5, nil, 6]
except_nil = array.compact
=> [1, 2, 3, 4, 5, 6]
私の場合each文でデータベースから値を探して、配列に放り込んでいたときにnilが入ってきたのでcompactを使用しました。
!をつければ破壊的な使い方もできるようです。
array = [1, 2, 3, 4, 5, nil, 6]
array.compact!
=> [1, 2, 3, 4, 5, 6]
arrayの中身そのものを書き換えちゃうのですね。