Rubyリファレンス: Home

reject (Hash)

Edit   History

標準クラス・モジュール > Hash > reject

hash.reject {|key, val| block }

rejectメソッドは、条件に合わないキーと値を探して集めます。ブロック引数keyvalにキーと値を入れながらブロックを繰り返し、ブロックの戻り値が偽になったときのキーと値を集め、新しいハッシュで返します。Ruby 1.8.7と1.9では、ブロックを省略したときの戻り値はEnumeratorオブジェクトになります。

次の例は、ハッシュから60未満の値を持つものを集めます。

scores = { 'Alice' => 50, 'Bob' => 60, 'Carol' => 90, 'David' => 40 }
p scores.reject {|k, v| v >= 60 }
{"Alice"=>50, "David"=>40}

関連項目