1. ホーム
  2. ruby

[解決済み] Rubyで重複したキーを上書きせずに2つのハッシュをマージするにはどうすればよいですか?

2022-04-28 10:44:39

質問

簡単な方法、または エレガント 重複するキーを上書きすることなく、2つのハッシュをマージする方法は?

つまり、元のハッシュにキーが存在する場合、その値を変えたくないのです。

どのように解決するのですか?

2つのハッシュがある場合 optionsdefaults をマージしたい場合 defaultsoptions を既存のキーを上書きすることなくマージすることができます。 optionsdefaults :

options = defaults.merge(options)

あるいは、Railsを使っているならば、こうすることもできます。

options.reverse_merge!(defaults)