Clojure中的数字是否会下降?

时间:2013-06-30 18:20:36

标签: clojure

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

(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,因为这构造了一个惰性序列。

1 个答案:

答案 0 :(得分:35)

  

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

Yes

(<= 5 8 8.5)

它适用于任意数量的参数并检查它们是否已订购。有3个参数,这就是你要找的东西。