Skip to content

End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →

instance method

Enumerable#to_h

enum.to_h(*args) → hash
enum.to_h(*args) {...} → hash

Returns the result of interpreting enum as a list of [key, value] pairs.

Example
%i[hello world].each_with_index.to_h
  # => {:hello => 0, :world => 1}

If a block is given, the results of the block on each element of the enum will be used as pairs.

Example
(1..5).to_h {|x| [x, x ** 2]}
  #=> {1=>1, 2=>4, 3=>9, 4=>16, 5=>25}
See also #to_a #to_set #tally #uniq also in 4.1 · 4.0 · 3.4 · 3.3 · 3.2 · 3.1