Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 迭代时添加到数组_Ruby_Arrays_Iteration - Fatal编程技术网

Ruby 迭代时添加到数组

Ruby 迭代时添加到数组,ruby,arrays,iteration,Ruby,Arrays,Iteration,为什么这段代码会“锁定”ruby?什么是克服它的最好方法?我在下面发布了我的解决方案。还有别的办法吗?提前谢谢 代码: nums=[1,2,3] nums.each{| i | nums这是因为每个都使用一个枚举数(因此,如果不断向其添加,它永远不会到达末尾) 可以在应用每个阵列之前复制阵列 nums = [1, 2, 3] nums.dup.each { |i| nums << i + 1 } nums=[1,2,3] nums.each{| i | nums nums = [

为什么这段代码会“锁定”ruby?什么是克服它的最好方法?我在下面发布了我的解决方案。还有别的办法吗?提前谢谢

代码:

nums=[1,2,3]

nums.each{| i | nums这是因为每个都使用一个枚举数(因此,如果不断向其添加,它永远不会到达末尾)

可以在应用每个阵列之前复制阵列

nums = [1, 2, 3] 
nums.dup.each { |i| nums << i + 1 }
nums=[1,2,3]
nums.each{| i | nums
nums = [1, 2, 3]
adjustments = []
nums.each { |i| adjustments << i + 1 }
nums += adjustments 
nums = [1, 2, 3] 
nums.dup.each { |i| nums << i + 1 }
nums = [1, 2, 3] 
nums += nums.map { |i|  i + 1 }
nums = [1, 2, 3] 
nums.each { |i| nums << i + 1 }