首页 > 解决方案 > 在 Ruby 中使用哈希数组时的奇怪行为

问题描述

如果我初始化一个哈希数组,然后分配给数组中的 1 个元素,为什么所有元素都有效地分配给了?

e = Array.new(4, {})
e[0][:test] = 5
e

现在 e 看起来像这样,为什么?:

[{:test=>5}, {:test=>5}, {:test=>5}, {:test=>5}]

标签: arraysruby

解决方案


推荐阅读