将未知数量的参数传递给ruby函数

Nat*_*Nat 1 ruby syntax

我正在编写一个方法来将另一个方法包装为类的一部分.它需要接受并传递任意数量的参数.

就像是...

def do(*things)
  old_method(things)
end
Run Code Online (Sandbox Code Playgroud)

除了这不起作用,因为old_method需要作为单独的参数而不是作为数组传递thing数组的内容.

我只是想不出一种在ruby语法中做到这一点的方法......

knu*_*nut 5

您可以使用:

def do(*things)
  old_method(*things)
end
Run Code Online (Sandbox Code Playgroud)

这是一个splat运算符,参见例如(一元)*运算符在这个Ruby代码中做了什么?或者 在这里做什么咒语?