为了兼容性,Datomic查询返回java.util.HashSet
。我想在查询结果集上使用clojure.set
函数,例如设置差异。目前,我正在使用(set datomic_result)
将结果集转换为Clojure集。有替代方案吗?
答案 0 :(得分:1)
我建议您不要依赖返回值为java.util.Set
的事实,这是一个实现细节(根据Datomic documentation,返回类型为{{1} }})。
通过将set操作直接应用于返回的集合而不是强制转换为Set,可以获得更好的性能。例如:
java.util.Collection
使用into可以同时利用Transients和Transducers,这可以在大型输入上显着提升性能。