本文介绍了在一行中创建多个数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我做到了:

a, b = Array.new(2, [0, 0])
a[0] = 1

我有:

a # => [1, 0]

我遇到b的问题,这与a相同:

I have a problem with b, which is the same as a:

b # => [1, 0]

问题是参考地址.

帮我在一行中初始化数组.

Help me initialize array in one line.

推荐答案

此处:

因此,正如@mudasobwa在评论中已经建议的那样,您需要使用对每个元素使用块结果的块版本:

So, as @mudasobwa already suggested in the comments, you need to use the block version which uses the result of block for each element:

a, b = Array.new(2) { [0, 0] }
 => [[0, 0], [0, 0]]

a[0] = 1

a
 => [1, 0]

b
 => [0, 0]

这篇关于在一行中创建多个数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-25 03:22