【发布时间】:2016-06-17 17:58:25
【问题描述】:
我无法绕过它。我尝试咨询ruby-doc on enumerator,但没有多大帮助。
来自 ruby 文档:
fib = Enumerator.new do |y|
a = b = 1
loop do
y << a
a, b = b, a + b
end
end
我不明白的是,为什么我不能只写fib = Enumerator.new,而我必须写fib = Enumerator.new do |y|?
y 是什么类型的对象?当fib.next 被执行或fib.take(5) 被执行时,y 在做什么?
【问题讨论】:
标签: ruby enumerator