Kernel#loop
创建一个无限循环,基本上创建一个返回虚拟Qnil
值的迭代器:
loop.with_index do |what, index|
puts [what, index].inspect # what == Qnil, returned from iterator
break
end
#⇒ [nil, 0]
我们可能无法让迭代器产生空白,这就是原因。现在问题是(感谢@Stefan明确表达措辞):为什么loop.peek_values
返回一个空数组,而不是[nil]
?