【发布时间】:2015-12-09 12:07:35
【问题描述】:
我正在尝试将值添加到数组中的单个插槽。例如:
a = Array.new(3,[]) # => [[],[],[]]
a[1] << "value" # => [[],["value"],[]]
但是,值会添加到数组中的所有槽中。
# => [["value"],["value"],["value"]]
这种行为有原因吗?是否有一种标准方法可以向数组添加值以避免这种行为?
【问题讨论】:
-
您遇到了一个“常见问题”,文档中对此进行了解释:ruby-doc.org/core-2.2.0/…
-
"common gotcha's" 我希望这是一个常见错误列表,但仅此而已。无论如何,谢谢!
标签: arrays ruby immutability