[解決済み】配列からハッシュへの変換 Ruby
2022-04-10 01:45:34
質問
このArrayを変換してください。
a = ["item 1", "item 2", "item 3", "item 4"]
...ハッシュへ。
{ "item 1" => "item 2", "item 3" => "item 4" }
での要素、すなわち 偶数 のインデックスは キー と 奇数 は 価値観 .
解決方法は?
a = ["item 1", "item 2", "item 3", "item 4"]
h = Hash[*a] # => { "item 1" => "item 2", "item 3" => "item 4" }
これで終わりです。その
*
というのがあります。
スプラット
演算子を使用します。
Mike Lewis (コメント) によると、1つの注意事項があります: "これには十分注意してください。Ruby はスタック上にスプラットを展開します。大きなデータセットでこれをやると、スタックが吹っ飛ぶことが予想されます(")。
ですから、ほとんどの一般的なユースケースではこの方法は素晴らしいのですが、たくさんのデータに対して変換を行いたい場合は、別の方法を使用してください。例えば、@Łukasz Niemier (コメント欄にもあります) は大規模なデータセットに対してこの方法を提供しています。
h = Hash[a.each_slice(2).to_a]
関連
-
[解決済み] Rubyでランダムな文字列を生成する方法
-
[解決済み] ルビースリープやディレイは1秒以下?
-
[解決済み] Ruby 1.8.7 ハッシュを文字列に変換する
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 配列からArrayListを作成する
-
[解決済み] JavaScriptの配列で一意な値をすべて取得する(重複を排除する)。
-
[解決済み] JavaScriptで配列の先頭に新しい配列要素を追加するにはどうすればよいですか?
-
[解決済み] 多次元配列の値によるソート方法
-
[解決済み] 新しい配列を作成せずに、既存のJavaScript配列を別の配列で拡張する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Ruby:kind_of? vs. instance_of? vs. is_a?
-
[解決済み] ルビー階乗関数
-
[解決済み] Rubyがブロックの中でパイプ文字を使うことについて、誰か説明してください。
-
[解決済み] git, Heroku: pre-receive フックの減少
-
[解決済み] nil から String への暗黙の変換ができないエラー
-
[解決済み] string literal in condition "とはどういう意味ですか?
-
[解決済み] Ruby on Railsでホスト名やIPを取得する
-
[解決済み] Rubyでファイルを移動するにはどうしたらいいですか?
-
[解決済み] Rubyで2次元配列の作成と反復処理
-
[解決済み] JanusのセットアップにVIMプラグインを追加する