欢迎!有关如何使用本网站更多信息的介绍请查看关于页面。
Clojure中是否有类似于Scala的ArraySeq的不变Java数组包装器?
您对引入此类包装器到Clojure的核心有什么看法?
它已经存在了,并且具有完全相同的名称。该包是clojure.lang。
clojure.lang
要使用它,只需在数组上调用seq - 结果将是包装数组的ArraySeq实例。
seq
ArraySeq
注意,数组不会被复制,因此不应被其他事物修改。此外,对原始类型有自定义类,例如ArraySeq_int,但这只是实现细节 -我只是让你知道,这样你就不会开始检查(instance? clojure.lang.ArraySeq x)。
ArraySeq_int
(instance? clojure.lang.ArraySeq x)