ho trovato scalaj-collezioni e sembra che sia l'unica libreria che mi permetterà di convertire Java.util.List
a scala.collection.Seq
.
Posso usare questa libreria nel mio progetto Java? O è esclusivo di Scala. Ho incluso le sue dipendenze nel mio maven pom.xml e posso usare la libreria nel mio codice, ma non vedo come applicare il .asScala
metodo in un progetto Java
Grazie
risposte:
1 per risposta № 1Non hai bisogno di dipendenze di terze parti per la conversione tra le collezioni scala e java. La libreria Scala ha un set di adattatori chiamato JavaConversions.
Importa solo scala.collection.JavaConversions._
e otterrai conversioni implicite tra scalae le interfacce di raccolta java, in modo da poterli passare come argomenti alle funzioni, chiamare metodi scala-specific su raccolte java (e viceversa) e così via.
import scala.collection.JavaConversions._
val sl = new scala.collection.mutable.ListBuffer[Int]
val jl : java.util.List[Int] = sl
jl.map(_ + 1)
val sl2 : scala.collection.mutable.Buffer[Int] = jl
0 per risposta № 2
Java.util.List to scala.collection.Seq
Scala ha il proprio Elenco (scala.collection.List). Inoltre, Lista ha una funzione chiamata toSeq (). Credo che questo sia quello che vuoi.