使用 Arraynew 创建数组

可以使用 Array 的类方法 Array::new 创建一个空数组([]):

Array.new    

要设置数组的长度,请传递一个数字参数:

Array.new 3 #=> [nil, nil, nil]

有两种方法可以使用默认值填充数组:

  • 传递不可变值作为第二个参数。
  • 传递获取当前索引的块并生成可变值。
Array.new 3, :x #=> [:x, :x, :x]

Array.new(3) { |i| i.to_s } #=> ["0", "1", "2"]

a = Array.new 3, "X"            # Not recommended.
a[1].replace "C"                # a => ["C", "C", "C"]

b = Array.new(3) { "X" }        # The recommended way.
b[1].replace "C"                # b => ["X", "C", "X"]