looper = (0..3).cycle
20.times { puts looper.next }
我可以以某种方式找到3的下一个吗?我的意思是,如果我可以在任何给定时间获得.next
任何特定元素。不只是以第一个元素开头的显示循环。
当然我在发布问题之前通过了ruby doc。但我没有在那里找到答案......
输入
looper = (0..max_cycle).cycle
max_cycle
=每次运行脚本时可能不同的变量
looper
=始终来自interval(0..max_cycle)的变量,但脚本启动时的当前值可以是any。它基于Time.now.hour
输出
我希望在脚本运行期间的任何时候知道.next
looper
的值
答案 0 :(得分:4)
你的问题不是很清楚。也许你想要这样的东西?
(current_value + 1) % (max_cycle + 1)
例如,如果max_cycle = 3
您将获得以下输出:
current_value returns
0 1
1 2
2 3
3 0
答案 1 :(得分:2)