2013-06-30 15 views
5

Clojure SeqをScala Seqに変換する際に問題があります。これを行う簡単な方法があるはずです。Clojure to Scala型変換

(let [animals ["dog" "cat" "pig"]] 
    (to-scala-seq animals)) 

私の目標は、Clojureプロジェクトでtwitter's algebirdを使用することです。

+4

を参照してください。あなたがしようとしています'to-scala-seq'を定義するのですか?もしそうなら、自分が持っているものを示すべきです。 – Jeremy

答えて

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?