Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > setライブラリ > Setクラス > classify
classify {|o| ... } -> Hash
[permalink][rdoc]集合をブロックの値によって分類し、結果をハッシュとして返します。
ブロックは集合の各要素について実行され、引数 o にはその要素が 渡されます。
生成されるハッシュのキーはブロックの実行結果、値は分類された集合と なります。
require 'set' numbers = Set[10, 4.5, 20, 30, 31.2] p numbers.classify {|o| o.class} #=> {Fixnum=>#<Set: {10, 20, 30}>, Float=>#<Set: {4.5, 31.2}>}