gpt4 book ai didi

clojure - ClassCastException java.lang.Long 不能转换为 clojure.lang.IFn

转载 作者:行者123 更新时间:2023-12-03 07:27:17 25 4
gpt4 key购买 nike

我有一个函数,它需要年数和薪水,然后递归地将薪水加倍,直到年数用完。但是,我不断收到此错误:

ClassCastException java.lang.Long cannot be cast to clojure.lang.IFn



代码
(defn calculate-salary
[years salary]
(if (= years 0)
(salary)
(calculate-salary (- years 1) (* salary 2))))

我对 Clojure 很陌生,所以我确定它很简单,但我似乎无法弄清楚。

最佳答案

错误的含义不应该太难理清:在需要函数的地方使用了一个数字。

Clojure 中的括号不是分组构造,它们主要用于调用函数调用。如果您更改 (salary)salary您将返回数字而不是尝试将其作为无参数函数调用。

关于clojure - ClassCastException java.lang.Long 不能转换为 clojure.lang.IFn,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26720847/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com