Clojure`defn`参数是否在括号中
我看到一个Clojure函数被定义为
(defn toInt([i] (Integer. i)))
为什么参数[i]
包含在括号内? 这和下面一样吗? 有什么区别?
(defn toInt [i] (Integer. i))
第一个使用符号重载的符号,但只包含一个参数。
两个宝座的例子:
(defn my-add
([x] (+ x 1))
([x y] (+ x y)))
(my-add 1) ;;=> 2
(my-add 1 2) ;;=> 3
另请参阅http://clojure.org/functional_programming(搜索arity重载)。
链接地址: http://www.djcxy.com/p/82571.html