我想在声明哈希值后清除数组并允许哈希值保持不变。 这甚至可能吗?
hash = {}
number= "number"
array = [1,2,3,4,5,6]
hash[number]=array
这是清除阵列后的预期结果。
{"number"=>[1, 2, 3, 4, 5,6]}
答案 0 :(得分:5)
hash[number] = array.dup
array.clear
hash
=> {"number"=>[1, 2, 3, 4, 5, 6]}
如果array
只包含简单对象(如整数),则可以使用dup
方法。否则你需要一份深层复制品。