我正在使用:
import scala.collection.JavaConverters._
import scala.collection.Set
这有效:
val a: java.util.HashSet[java.lang.Long] = javaFunction(...)
val b: Set[java.lang.Long] = a.asScala.toSet
但我想要的是Set[Long]
,而不是Set[java.lang.Long]
。当我尝试这个时:
val a: java.util.HashSet[java.lang.Long] = javaFunction(...)
val b: Set[Long] = a.asScala.toSet
我得到:Expression of type scala.collection.immutable.Set[java.lang.Long] doesn't conform to expected type scala.collection.Set[Long]
。
为什么会这样,我如何获得Set[Long]
?
答案 0 :(得分:6)
简单地:
import scala.collection.JavaConverters._
val b: Set[Long] = a.asScala.map(Long2long).toSet