Enumerable#partitionでブロックの評価が真と偽の要素に分ける٩( ‘ω’ )و

いままでブロックで評価して真のものはselectで、それ以外はrejectとか2回やってた...

でも、これ1回でできたらおしゃれですよねー

そんなときはEnumerable#partition

こんなかんじ( ˘ω˘)

array = ["cat", 1, 2, "dog", 0.1]

numbers, non_numbers = array.partition { |v| v.is_a?(Numeric) }

numbers     #=> [1, 2, 0.1]

non_numbers #=> ["cat", "dog"]

Happy Hacking٩( ‘ω’ )و