数组和共享内存的数组

时间:2015-01-19 22:58:39

标签: ruby arrays

我正在创建一个嵌套数组。当我构建一个新行并将其附加到嵌套数组时,使用方法clear清除该行,然后重新构建另一个新行,它将清除两个数组中的行。知道为什么吗?

代码段:

new_rec = Array.new
new_rec << "string1"
new_rec << "string2"
new_rec << "string3"
new_rec << "string4"

new_csv = Array.new
new_csv << new_rec
new_rec.clear
new_csv #=> [[]]

1 个答案:

答案 0 :(得分:1)

这是因为new_rec中有new_csv,您清除了对象new_rec