(2011..1995).to_a
返回一个数组
(Time.now.year.to_i..1995).to_a
没有。为什么呢?
答案 0 :(得分:12)
试
> 2011.downto(1995).to_a
=> [2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003, 2002, 2001, 2000, 1999, 1998, 1997, 1996, 1995]
答案 1 :(得分:2)
您可以使用此
(Time.now.year.to_i).downto(1995).to_a
答案 2 :(得分:0)
我不认为这两种方法都有效。这是WinXP上的irb ...
irb(main):009:0> (2011..1995).to_a
=> []
irb(main):010:0> (Time.now.year.to_i..1995).to_a
=> []
irb(main):011:0>
答案 3 :(得分:0)
(1995..Time.now.year.to_i).to_a有效。结束应该比开始大。
答案 4 :(得分:0)
我无法复制你的结果。这两个表达式都返回一个数组。
当然,由于两个范围都是空的,表达式将始终返回空数组,但这与您的问题无关。