如何在 Ruby 中循环数组枚举

How to cycle array enumeration in Ruby

我想实现这样的枚举器,它从最后一个元素倒回到第一个元素并继续循环,这样一个无限循环。怎么做到的?

有一种方法可以做到这一点:

Enumerable#cycle

>> a = [1, 2, 3]
>> a.cycle.first(7)
=> [1, 2, 3, 1, 2, 3, 1]