我有一个Scala数组字符串:
val names:Array[String] = something.map(...)
我需要调用接受Collection
的Android(java)methodpublic void addAll (Collection<? extends T> collection)
如何将数组转换为集合?
答案 0 :(得分:21)
java.util.Arrays.asList(names: _*)
import collection.JavaConversions._
val namesColl: java.util.Collection[String] = names.toSeq
在后一种方法中,names
数组首先转换为Seq[String]
,然后位于JavaConversions
中的隐式转换表明需要Java集合,因此它会显着地应用必要的转换。别担心,it is constant in time。
答案 1 :(得分:1)
JavaConversions
现已弃用。
您应该使用JavaConverters
代替。
import collection.JavaConverters.asJavaCollection
val collection = asJavaCollection(Array("some value"))