inv*_*kat 3 lisp java oop clojure
我有一个java.util.Collections $ UnmodifiableList 这样的东西:
(.getGuilds bot)
Run Code Online (Sandbox Code Playgroud)
我如何迭代它,getName
在每个上面调用一个方法并创建所有名称的另一个列表.
如果我理解正确的话,你唯一需要做的就是简单地映射列表并获取名称.由于java.util.Collections$UnmodifiableList
是可迭代的,clojure会将其视为可分集的集合.一个简单的例子:
user> (import java.util.Collections)
java.util.Collections
user> (def files (Collections/unmodifiableList
[(java.io.File. "aaa") (java.io.File. "bbb")]))
#'user/files
user> (map #(.getName %) files)
("aaa" "bbb")
Run Code Online (Sandbox Code Playgroud)
所以,在你的情况下,它应该是这样的:
(map #(.getName %) (.getGuilds bot))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
95 次 |
最近记录: |