Rubyリファレンス: Home

select! (Hash)

Edit   History

Ruby 1.9.2

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

hash.select! {|key, val| block }

select!メソッドは、繰り返しブロックを実行し、ブロックの戻り値が真になったキーと値を残し、偽になったものを削除します。レシーバ自身を変更するメソッドです。ブロック引数keyvalにはキーと値が入ります。

戻り値はレシーバ自身です。何も削除しなかったときはnilを返します。ブロックを渡さなかったときはEnumeratorオブジェクトを返します。keep_ifも参照してください。

scores = { "Alice" => 50, "Bob" => 60, "Carol" => 90, "David" => 40 }
scores.select! {|key, val| val >= 50 }
p scores
{"Alice"=>50, "Bob"=>60, "Carol"=>90}

関連項目