标签: ruby methods iterator yield
我试图理解这个迭代器是如何工作的:
def two_times yield yield end two_times {puts "Hello"}
第二部分是否调用该方法,然后yield调用{puts "Hello"}?
yield
{puts "Hello"}
答案 0 :(得分:3)
基本上,是的。最后一行调用方法two_times并传入一个代码打印出Hello的块。每次方法执行yield时,都会执行该块。
two_times
Hello