clojure查找最后一个元素而不使用last函数

标签 clojure

我正在学习 clojure 并一直在使用 4clojure.com得到更好的。我刚刚完成#19但似乎我并没有完全按照作者的预期去做——就像我可能在某种程度上错过了重点一样。

4 clojure problem 19

考虑到您不能使用最后一个函数的限制,这看起来是一个合理的解决方案吗?

#(.get %(- (count %) 1))

最佳答案

如果您要使用:

#(first (reverse %))

您不妨用“comp”来编写函数:

(comp first reverse)

这可能更惯用并且更容易阅读。关于“反向”不偷懒的同样的警告也适用于此。

关于clojure查找最后一个元素而不使用last函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8264881/

相关文章:

postgresql - 如何使用 Luminus 连接到 Heroku 中的 PostgreSQL?

recursion - 如何理解clojure的lazy-seq

macros - Clojure 宏在调用时抛出 "CompilerException java.lang.IllegalStateException: Var clojure.core/unquote is unbound"

clojure - 在datomic中,如何找出哪些键可用于反向查找?

clojure - 找到 m 以下所有整数的 n 元组,其总和为素数

clojure - Docker 容器回滚后在 Clojure 中回滚迁移

java - 为什么 Java 的 .addShutdownHook 在 BeagleBone Black 上不能用于 Ctrl-C?有解决方法吗?

shell - 使用终端命令启动 lein repl

clojure - :use fails in lein project

multithreading - Clojure 消息处理/异步、多线程