Ruby什么是*args?数组还是?以某种方式

Ruby什么是*args?数组还是?以某种方式,ruby,Ruby,如果我编写如下方法,那么*args或*url是什么 def test(*args) @test = args end 我还看到了*URL它是数组还是?Like选项是使用hashoptions={}创建的 试试这个(它会回答你的问题): 我相信这是为了生成函数(即函数的arity是任意数量的参数) 类型是数组。我相信OP要求的是args的类型,而不是它的用途,但我的解释可能是错误的。否则,是的,这使函数变了。我加了第二句话。:)为什么要用它?为什么不直接编写def测试(args)?@Railsb

如果我编写如下方法,那么*args或*url是什么

def test(*args)
@test = args
end
我还看到了
*URL
它是数组还是?Like选项是使用hash
options={}
创建的

试试这个(它会回答你的问题):


我相信这是为了生成函数(即函数的arity是任意数量的参数)


类型是数组。

我相信OP要求的是
args的类型,而不是它的用途,但我的解释可能是错误的。否则,是的,这使函数变了。我加了第二句话。:)为什么要用它?为什么不直接编写def测试(args)?@Railsbeginner我不是说你应该使用这个函数,而不是你已经使用过的函数。我只是说你们可以用这个函数来检查变量参数的类型,就像我上面演示的那个样。我试着不仅要回答这个问题,还要告诉你一个回答自己的方法。
def test *args
  puts args.class
end

test

>> Array