如何为二维数组指定默认值?

use*_*702 3 ruby arrays default initialization

我有一个像这样创建的二维数组:

array = Array.new(10){Array.new(10)}
Run Code Online (Sandbox Code Playgroud)

如何在初始化时为每个单元格分配默认值?

我知道我可以用两个嵌套each循环来做,但我想知道是否还有另一种方法?

kid*_*ils 8

只需提供值为的第二个参数:

array = Array.new(10) { Array.new(10, 4) }
Run Code Online (Sandbox Code Playgroud)

这里,默认值是4,因此,创建一个10*10 2D阵列,默认值为4.