给定一个参数数组,我该如何将这些参数发送到Ruby中的特定函数?

原谅初学者的问题,但说我有一个数组:

a = [1,2,3] 

还有一个地方的function; 假设这是一个实例函数:

 class Ilike def turtles(*args) puts args.inspect end end 

我如何用a调用Ilike.turtles ,就好像我正在调用(Ilike.new).turtles(1,2,3)

我熟悉send ,但这似乎并没有将数组转换为参数列表。

我正在寻找的并行Javascript apply ,这相当于call但将数组转换为参数列表。

如你所知,当你定义一个方法的时候,你可以使用*来将一个参数列表转换成一个数组。 同样,当你调用一个方法时,你可以使用*来将一个数组变成一个参数列表。 所以在你的例子中,你可以做:

 Ilike.new.turtles(*a)