Ruby 有没有办法复制多维数组?我的意思是一些内置函数。
当我尝试使用 .dup 时,它只返回引用:
irb(main):001:0> a = [[1,2,3], [4,5,6]]
=> [[1, 2, 3], [4, 5, 6]]
irb(main):002:0> b = a.dup
=> [[1, 2, 3], [4, 5, 6]]
irb(main):003:0> b[0][0] = 15
=> 15
irb(main):004:0> a == b
=> true
最佳答案
您需要复制列表中的数组,而不仅仅是外部数组。最简单的方法可能是类似
b = a.map(&:dup)
关于Ruby 复制数组的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10514857/