使用send接受块的方法

时间:2012-07-13 13:03:27

标签: ruby

我正在尝试用红宝石完成这段元编程

my_array = 1..10
method = :each

my_array.send(method) {|num| puts num }

哪个不起作用。有人知道如何动态传递块吗?我已经尝试过了:

my_array.send(:each, lambda{|num| puts num })
my_array.send(:each, Proc.new{|num| puts num })

但没有任何效果。谢谢!

1 个答案:

答案 0 :(得分:8)

你的第一个片段非常好,这应该可行:

(1..10).send(:each) { |num| puts(num) }