我写了以下代码,它保持x
在范围内(a..b)
。在伪代码中:
(if x < a, x = a; if x > b, x = b)
在 Ruby 中,它会是这样的:
x = [a, [x, b].min].max
由于它是非常基本且有用的功能,我想知道在 ruby 中是否有本地方法可以做到这一点。
从 Ruby 2.3.3 开始,显然没有这样的方法,那么最短/更易读的方法是什么?
我发现:
x = [a, x, b].sort[1]
到目前为止,但我不确定它是否更具可读性。