20

有没有比以下更好的方法:

(defn in-interval?
  "Returns a predicate that tests if its argument falls in
  the inclusive interval [a, b]."
  [a b]
  (fn [x] (and (>= x a) (<= x b))))

正在使用:

((in-interval? 5 8) 5.5) ; true
((in-interval? 5 8) 9)   ; false

例如,我不想使用range,因为它会构造一个惰性序列。

4

1 回答 1

50

有没有比以下更好的方法:

的。

(<= 5 8 8.5)

它适用于任意数量的参数并检查它们是否有序。使用 3 个参数,这就是您要寻找的。

于 2013-06-30T18:27:56.870 回答