下面的所有值让我用语法b
调用一个方法。*args
def some_method(a)
puts a
end
b = 1
some_method(*b) # => 1
b = false
some_method(*b) # => false
b = "whatever"
some_method(*b) # => "whatever"
有了nil
,我希望得到nil
,而不是参数错误:
b = nil
some_method(*b) # => ArgumentError: wrong number of arguments (0 for 1)
这里发生了什么?