【发布时间】:2016-05-19 17:36:49
【问题描述】:
可以像这样使用Enumerator::Lazy.new 将枚举器转换为惰性枚举器(这是一个示例;一开始,我已经有一个枚举器,而不是数组):
xs_enum = [1, 2, 3].to_enum
# => #<Enumerator: [1, 2, 3]:each>
xs_lazy_enum = Enumerator::Lazy.new(xs_enum, &:yield)
# => #<Enumerator::Lazy: #<Enumerator: [1, 2, 3]:each>:each>
xs_lazy_enum.force
# => [1, 2, 3]
还有更简洁的方法吗?
【问题讨论】:
标签: ruby