我在将Clojure Seq转换为Scala Seq时遇到问题。似乎应该有一个简单的方法来做到这一点。
(let [animals ["dog" "cat" "pig"]]
(to-scala-seq animals))
我的目标是在Clojure项目中使用twitter's algebird。
答案 0 :(得分:4)
因为Clojure和Scala都在JVM上运行,所以这很简单:
(ns scala-from-clojure.core
(:import (scala.collection JavaConversions)))
(defn to-scala-seq [coll]
(-> coll JavaConversions/asScalaBuffer .toList))
在REPL
user=> (use 'scala-from-clojure.core)
nil
user=> (to-scala-seq [1 2 3])
#<$colon$colon List(1, 2, 3)>
user=> (instance? scala.collection.immutable.Seq *1)
true
见
How to create a scala.collection.immutable.Seq from a Java List in Java?