我明白当我尝试Ruby的三元操作
10 > 5 ? puts "greater" : puts "less"
我得到一个错误,该代码
options = arguments[-1].is_a?(Hash) ? arguments.pop : {}
转化为
if arguments[-1].is_a?(Hash)
options = arguments.pop
else
options = {}
end
。然而,
puts 10 > 5 ? "greater" : "less"
返回"greater"
这两个代码有什么区别?
在发布有关您的代码引发的异常的问题时,请提供完整的错误消息,如果不明显,则提供该错误消息。错误消息包含有价值的信息你需要仔细研究它们。 – 2014-09-24 22:24:43