11: Blocks 和 Procs
代码块和 Procs 提供了灵活且强大的方法来封装和传递代码。
Blocks
一个代码块是一个匿名代码段,可以与方法一起使用。你可以在方法定义中使用 yield 关键字来执行传递给方法的块。
def greet
yield
end
greet { print "Hello, world!" } # 输出 "Hello, world!"
你也可以传递带参数的块:
def greet
yield("Ruby")
end
greet { |name| print "Hello, #{name}!" } # 输出 "Hello...