Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Hashクラス > transform_values!

instance method Hash#transform_values!

transform_values! {|value| ... } -> self[permalink][rdoc]
transform_values! -> Enumerator

すべての値に対してブロックを呼び出した結果でハッシュの値を変更します。キーは変化しません。

[RETURN]
transform_values! は常に self を返します。ブロックが与えられなかった場合は、Enumerator オブジェクトを返します。


h = { a: 1, b: 2, c: 3 }
h.transform_values! {|v| v * v + 1 }  #=> { a: 2, b: 5, c: 10 }
h.transform_values!(&:to_s)           #=> { a: "2", b: "5", c: "10" }
h.transform_values!.with_index {|v, i| "#{v}.#{i}" }
                                      #=> { a: "2.0", b: "5.1", c: "10.2" }

[SEE_ALSO] Hash#transform_values