在Ruby中获取降序范围序列

时间:2012-06-19 14:25:06

标签: ruby range

所以这是在提升

(1..5).to_a => [1, 2, 3, 4, 5]

但这不是

(5..1).to_a => []

我试图从任意天花板上获得降序。感谢。

2 个答案:

答案 0 :(得分:14)

试试这个:

5.downto(1).to_a # => [5, 4, 3, 2, 1]

当然,还有一个相应的#upto。如果你想要步骤,你可以这样做:

1.step(10, 2).to_a # => [1, 3, 5, 7, 9]
10.step(1, -2).to_a # => [10, 8, 6, 4, 2]

答案 1 :(得分:5)

或者你可以试试这个: (1..5).to_a.reverse # => [5, 4, 3, 2, 1]