语法错误:使用splat运算符和空哈希进行初始化

时间:2017-02-08 20:39:11

标签: ruby hash syntax splat

我有以下代码,据我所知应该正常工作但不会:

def calculate( *nums, options = {} ) //errors out here on equals sign
  if options.empty
    return add(nums)
  elsif options[:subtract]
    return substract(nums)
  elsif options[:add]
    return add(nums)
  end
end

错误:

  

class:SyntaxError   消息:/opt/eval-server/eval-server/app/models/eval_spec_runner.rb:5:语法   错误,意外'=',期待')'   def计算(* nums,options = {})^   backtrace:RubyMonk:18:在'eval'

1 个答案:

答案 0 :(得分:1)

splat参数必须是您方法的最后一个参数。