【发布时间】:2011-07-06 21:45:21
【问题描述】:
我想要一组可以增加/减少值的方法,但下限为零。
基本上:
def decrement
@value -= 1
end
除了,我不希望它低于零。
最好的“红宝石方式”是什么?
【问题讨论】:
标签: ruby methods limit increment decrement
我想要一组可以增加/减少值的方法,但下限为零。
基本上:
def decrement
@value -= 1
end
除了,我不希望它低于零。
最好的“红宝石方式”是什么?
【问题讨论】:
标签: ruby methods limit increment decrement
def decrement
@value -= 1 unless @value.zero?
end
或者如果你想抛出异常:
def decrement
raise RangeError, "can't decrement below zero" if @value.zero?
@value -= 1
end
【讨论】:
0 < value < 1会失败
def decrement
@value = [@value-1, 0].max
end
【讨论】:
def decrement(value)
value -= 1 if value - 1 >= 0
end
【讨论】:
def decrement
@value -= 1 unless @value - 1 < 0
end
【讨论】: