Convert from java.util.Vector to a scala Seq
-
20-06-2021 - |
Frage
I can see that there are ways to convert from a Java list to a Scala seq (using asScala
method) but I could not find any converters for java.util.Vector
.
Is there a similar way for this conversion too?
Lösung
JavaConverters
is a bit more idiomatic than JavaConversions
.
import collection.JavaConverters._
val v = new java.util.Vector[Int]
val s: Seq[Int] = v.asScala
Andere Tipps
Import JavaConversions
:
import collection.JavaConversions._
val v = new java.util.Vector[Int]()
val s = v.toSeq
// s is of type Seq[Int]
Note that starting Scala 2.13
, the package scala.jdk.CollectionConverters
provides asScala
via a pimp of java.util.List
and replaces packages scala.collection.JavaConverters/JavaConversions
:
import scala.jdk.CollectionConverters._
// val javaVector = new java.util.Vector(java.util.Arrays.asList(1, 2, 3))
javaVector.asScala.toSeq
// Seq[Int] = List(1, 2, 3)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow