Convertir java.util.Mis à la scala.collection.Ensemble
Comment puis-je convertir un java.util.Réglez[Chaîne] pour un scala.collection.Set avec un type générique dans Scala 2.8.1?
import scala.collection.JavaConversions._
var in : java.util.Set[String] = new java.util.HashSet[String]()
in.add("Oscar")
in.add("Hugo")
val out : scala.collection.immutable.Set[String] = Set(in.toArray : _*)
Et c'est le message d'erreur
<console>:9: error: type mismatch;
found : Array[java.lang.Object]
required: Array[_ <: String]
val out : scala.collection.immutable.Set[String] = Set(javaset.toArray : _*)
Ce que je fais mal?
Vous devez vous connecter pour publier un commentaire.
toArray()
appelé javaSet
retournera un tableau deObject
. Puisque vous avez déjà importéJavaConversions
,asScalaSet
permettra de convertir implicitement votre Java définie à une mutable Scala jeu ou utilisertoSet
le convertir en un immuable ensemble.Voir aussi Convertir Scala Mis en Java (java.util.Set)
Utilisation JavaConverters au lieu