从数组创建枚举对象a
。有没有什么方法可以指向.first
when .next
到达终点。
a = [5,1]
b = a.to_enum
b.next #=> 5
b.next #=> 1
b.next #=> Stop Iteration: Iteration reached an end.
是否可以指向第一个元素,以便我可以再次使用 next 或指向前一个元素或循环?
b.prev #=> undefined method
b.previous #=> undefined method
你可以使用cycle http://ruby-doc.org/core-2.0.0/Enumerable.html#method-i-cycle
b.cycle(2) {|x| puts x}
#=> 5
#=> 1
#=> 5
#=> 1
如果您想永远运行它,只需不要将参数传递给循环即可。您可以直接在数组对象上调用它,即a
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)