我对 Clojure 和函数式编程非常陌生。我正在研究 Codewars“偶数或奇数”练习题。 我想要的结果是根据传入的参数返回“偶数”或“奇数”。 到目前为止,我的代码只是打印单词“偶数”或“奇数”。
(ns kata)
(defn even-or-odd [number]
; ...
(if (= (Math/abs (rem number 2)) 1)
(println "Odd")
(println "Even"))
)
我的测试失败并显示以下消息:
expected: (= (even-or-odd 2) "Even") actual: (not (= nil "Even"))
如何返回单词“Even”或“Odd”而不是打印它?
刚刚想通了。
(defn even-or-odd [number]
; ...
(if (= (Math/abs (rem number 2)) 1)
(str "Odd")
(str "Even"))
)```