java.lang.Class 在日期捕获和字符串格式化时无法转换为 clojure.lang.IFn
java.lang.Class cannot be cast to clojure.lang.IFn when date capturing and string formatting
我并没有真正看出哪里出了问题,特别是因为我偶然发现了一个允许这样做的小变化,但无法解释它为什么起作用。还请从更全面的意义上告诉我,当您遇到将 Java class 转换为 Clojure 接口函数 (IFn) 的问题时,通常会出现什么问题,以及如何调试它。谢谢。
(defn date
[]
(new java.util.Date))
(defn x
[]
(.format(java.text.SimpleDateFormat "YYYY-MM-DD")(new java.util.Date)))
在SimpleDateFormat
的最后添加一个.
。现在,您将 class 作为函数调用,因此出现了异常。在末尾加一个点使其实例化。
您可以对 (new java.util.Date)
执行相同的操作 - 它可以替换为 (java.util.Date.)
。
我并没有真正看出哪里出了问题,特别是因为我偶然发现了一个允许这样做的小变化,但无法解释它为什么起作用。还请从更全面的意义上告诉我,当您遇到将 Java class 转换为 Clojure 接口函数 (IFn) 的问题时,通常会出现什么问题,以及如何调试它。谢谢。
(defn date
[]
(new java.util.Date))
(defn x
[]
(.format(java.text.SimpleDateFormat "YYYY-MM-DD")(new java.util.Date)))
在SimpleDateFormat
的最后添加一个.
。现在,您将 class 作为函数调用,因此出现了异常。在末尾加一个点使其实例化。
您可以对 (new java.util.Date)
执行相同的操作 - 它可以替换为 (java.util.Date.)
。