我在price=
类中有一个Ticket
方法,只有在小数点后最多有两个值时才设置价格: -
def price=(price)
if (price*100).to_i == price*100
@price = price
else
"The price format is off!"
end
end
现在,当我添加代码puts price=(50.75543)
时,我将50.75543
作为输出。我想到了两个问题: -
为什么代码甚至可以工作?方法调用本身无效(我尝试使用方法名称set_price
而不是price=
,并且它会抛出错误),因为我甚至没有创建{{{ 1}}类。这几乎就好像Ticket
方法被视为变量赋值。
即使代码为price=
,其中puts t.price=(50.75543)
是t
类的实例,但输出为Ticket
。为什么会这样?如何输出“价格格式已关闭!”?