以下将有效:
(map #(%1 "21") [identity])
Run Code Online (Sandbox Code Playgroud)
但是,以下代码失败
(map #(%1 "21") [.toString])
Run Code Online (Sandbox Code Playgroud)
如何创建Java方法的seq /集合?
mob*_*yte 10
Java方法不像clojure中的函数那样是一等公民.您不能将java方法作为参数传递,返回或存储在变量和集合中.但是您可以通过memfn或只包含原始方法调用的匿名函数来创建函数
(map #(%1 21) [(memfn toString)])
=> ("21")
(map #(%1 21) [#(.toString %)])
=> ("21")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
127 次 |
| 最近记录: |