中級 › Hash.new([]) のデフォルト値は全キーで同じ配列を共有してしまう › パターン2
Hash.new([]) のデフォルト値は全キーで同じ配列を共有してしまう
Hash.new([])で作ったハッシュは、存在しないキーにアクセスするたびに同じ1つの配列オブジェクトを返します。
1 baskets = _____________________________ ^ 2 baskets[:red] << "apple" 3 baskets[:blue] << "grape" 4 puts baskets[:red].inspect
出力: ["apple", "grape"]
空欄を埋めて実行を通す
キーごとに独立した配列がほしい場合は、ブロック形式でアクセスのたびに新しい配列を作る必要があります。
次の問題