Ruby中带有索引计数器的Array的逆序

时间:2012-12-24 03:19:28

标签: ruby

我有一个数组@dates,即UTC日期,并且按递增顺序排列。我想翻转数组的索引,以便日期按降序排列。我熟悉JS和Java,并且不知道如何在ruby中使用指针/索引计数器。

@dates = [//dates are in here already]

@reverseDates = []
@dates.each do |d|
  @reverseDates << @dates.last
end

@dates = @reverseDates

部分问题是我认为它复制了@dates的最后一个索引,而不是在推送时将其移动到另一个数组。

所以我通过预先添加数组来实现它,但是如何在Ruby中包含索引计数器来实现这一目标呢?

@reverseDates = []
@dates.each do |d|
  @reverseDates.unshift(d)
end

@dates = @reverseDates

1 个答案:

答案 0 :(得分:6)

Ruby已经扭转了内置的数组:

@dates.reverse!

来自http://ruby-doc.org/core-1.8.7/Array.html#method-i-reverse-21