如何在 ruby​​ 中填充从 1 到 x 的数组?

How can I fill an array from 1 to x in ruby?

我目前有这个代码:

ans = Array.new(3)
      ans.length.times do |x|
        ans[x] = x + 1
      end

有没有更快的方法来做到这一点?

最简单的方法是:

ans = (1..3).to_a

这个怎么样:

ans = (1..3).to_a

这使用了 Ruby 所谓的 Range

根据您要对 ans 执行的操作,您可能希望直接使用范围而不将其转换为数组。

使用范围并将其转换为数组:

(1..3).to_a

Unsplat 一个范围,像这样:

ans = *1..3