Ruby Array Ranges - PullRequest
       1

Ruby Array Ranges

4 голосов
/ 09 февраля 2011
(2011..1995).to_a 

возвращает массив

(Time.now.year.to_i..1995).to_a

нет. Почему?

Ответы [ 5 ]

12 голосов
/ 09 февраля 2011

попробуй

> 2011.downto(1995).to_a
=> [2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003, 2002, 2001, 2000, 1999, 1998, 1997, 1996, 1995]
2 голосов
/ 10 февраля 2011

Вы можете использовать это

(Time.now.year.to_i) .downto (1995) .to_a

0 голосов
/ 09 февраля 2011

Я не могу повторить ваши результаты. Оба эти выражения возвращают массив.

Конечно, поскольку оба диапазона пусты, выражения всегда будут возвращать пустой массив, но это не относится к вашему вопросу.

0 голосов
/ 09 февраля 2011

(1995..Time.now.year.to_i) .to_a работает. Конец должен быть больше, чем начало.

0 голосов
/ 09 февраля 2011

Я не вижу, что либо работает.Вот ирб на WinXP ...

irb(main):009:0> (2011..1995).to_a
=> []
irb(main):010:0> (Time.now.year.to_i..1995).to_a
=> []
irb(main):011:0>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...