允许多个参数或单个数组参数

时间:2012-03-31 15:24:54

标签: ruby arguments ruby-1.9 argument-passing

通常,我希望赋予参数形式灵活性,并期望将单个数组参数或多个参数作为单个数组一起处理。因此,以下两种用法将产生相同的结果。

foo([arg1, arg2, ...])
foo(arg1, arg2, ...)

实施此类方法的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

这个怎么样:

def foo(*bar)
  bar.flatten!
  p bar #or whatever
end

这将确保无论输入什么,您都可以获得单个平面阵列。