{category}

Ruby - ハッシュ操作

transform_keys

トランスフォーム キーズ(言語の基礎

意味 ハッシュのキーを変換


transform_keysとは?

transform_keysメソッドは、ハッシュの全てのキーを変換して新しいハッシュを作成します。各キーに対してブロックを実行し、その結果を新しいキーとして使用します。

transform_keysの具体的な使い方

キーを大文字に変換

hash = { name: 'Alice', age: 30 }
transformed = hash.transform_keys { |key| key.to_s.upcase }
puts transformed

👇出力結果

{'NAME'=>'Alice', 'AGE'=>30}

この例では、ハッシュのキーをすべて大文字の文字列に変換しています。シンボルのキーが文字列に変換され、さらに大文字化されます。

キーをキャメルケースに変換

snake_case_hash = { first_name: 'John', last_name: 'Doe' }

define_method :to_camel_case do
  gsub(/_([a-z])/) { $1.upcase }
end

camel_case_hash = snake_case_hash.transform_keys { |key| key.to_s.to_camel_case }
puts camel_case_hash

👇出力結果

{"firstName"=>"John", "lastName"=>"Doe"}

この例では、スネークケースのキーをキャメルケースに変換しています。カスタムメソッド to_camel_case を定義して変換を行っています。

transform_keysに関するよくある質問

Q. transform_keysの戻り値は?
A. transform_keysメソッドは、変換された新しいハッシュを返します。元のハッシュは変更されません。
Q. キーを削除することはできる?
A. transform_keysでは直接キーを削除することはできません。ただし、nilを返すことで実質的にキーを削除できます。例: hash.transform_keys { |key| key == :unwanted ? nil : key }
Q. シンボルキーを文字列に変換?
A. シンボルキーを文字列に変換するには、次のようにします: hash.transform_keys(&:to_s)

transform_keysが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Rubyのtransform_keysやodd?、sort、downto、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Rubyを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Rubyはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

odd?

奇数かどうかの判定

種類: 数値操作

sort

配列を並べ替える

種類: 配列操作

downto

指定値まで減少ループ

種類: 数値操作

@@name

クラス変数

種類: クラス変数

when

case文の条件分岐

種類: 条件分岐