gpt4 book ai didi

ruby - 二维数组变量覆盖在 ruby​​ 中不起作用?

转载 作者:太空宇宙 更新时间:2023-11-03 17:40:30 26 4
gpt4 key购买 nike

我似乎无法覆盖我的 ruby​​ 代码中的变量。

我有两个二维数组,分别是tableupdated_tableupdated_table 继承了table 的值,这很有效,但随后在代码中,对 updated_table 的值进行了更改,当我尝试将 updated_table 设置回与 相同的值(状态)时>table 这行不通。

这是为什么呢?我正在尝试做的事情的非常简单的例子。

class SomeClass

table = [[0,20,5,1000,1000], [20,0,10,8,20], [5,10,0,1000,40], [1000,8,1000,0,6], [1000,20,40,6,0]]
updated_table = table
##
then here i have some code that makes changes to the values in the updated_table
##
2.times do
updated_table = table # this dosent work??
## do some more calculations and so on ##
end
end

最佳答案

当您调用 updated_table = table 时,您使 updated_table 成为了对 table 的引用。他们都指向完全相同的表。当您修改 updated_table 时,您实际上同时更新了 table

我相信你想要 updated_table = table.dup

关于ruby - 二维数组变量覆盖在 ruby​​ 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5201349/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com