我有这个:
def foo(a=3, b=6)
puts a+b
end
但我这样称呼它:
foo(params[:a], params[:b])
如果参数在那里,这很好,但如果它们不存在,它会被调用:
foo(nil,nil)
那么默认值 3 和 6 没有设置,它会为 nil 类抛出 undef 方法 '+' 的错误
我的问题是,即使 nil 被传递到方法中,是否有办法为方法设置默认值。因此,如果用户告诉您 nil,您会说“去你的男人!” 还是给他3个。
这不是一个好主意,我意识到,但我只是好奇。