我正在使用 Ruby on Rails 3,我想知道*
在函数参数附近存在运算符意味着什么,并了解它在其他场景中的用法。
示例场景(此方法来自 Ruby on Rails 3 框架):
def find(*args)
return to_a.find { |*block_args| yield(*block_args) } if block_given?
options = args.extract_options!
if options.present?
apply_finder_options(options).find(*args)
else
case args.first
when :first, :last, :all
send(args.first)
else
find_with_ids(*args)
end
end
end