从Java程序调用Clojure库.我得到了一个IPersistentMap.
键是Clojure关键字,如:名称等.
但似乎我不能只做一个
map.valAt(":name");
Run Code Online (Sandbox Code Playgroud)
用Java来解决它.我猜这是因为键不是普通的java字符串.那他们是什么?如何从IPersistentMap中提取数据?
您不需要使用阅读器.Clojure关键字属于类型clojure.lang.Keyword.您可以使用静态方法创建一个intern:
map.valAt(clojure.lang.Keyword.intern("name")); // Note: no leading colon
你试过使用Clojure.read吗?=>
map.valAt(Clojure.read(":name"))
或者也许 =>
// (:name my-map)
myMap.invoke(Clojure.read(":name"));
Clojure 1.6 Java API https://github.com/clojure/clojure/blob/master/changes.md#21-java-api
Clojure 的 JavaDoc https://clojure.github.io/clojure/javadoc/
| 归档时间: |
|
| 查看次数: |
501 次 |
| 最近记录: |