Scala 将Seq转换为ArrayBuffer
在Scala中有没有简明的方法将Scala 将Seq转换为ArrayBuffer,scala,seq,arraybuffer,Scala,Seq,Arraybuffer,在Scala中有没有简明的方法将Seq转换为ArrayBuffer ArrayBuffer(mySeq : _*) 一些说明:这使用了中的apply方法。该方法的签名是 def apply [A] (elems: A*): ArrayBuffer[A] 这意味着它接受数量可变的参数。例如: ArrayBuffer(1, 2, 3, 4, 5, 6, 7, 8) 也是一个有效的呼叫。属性:*向编译器指示应使用一个Seq来代替变量数量的参数(请参阅中的第4.6.2节) 编辑在Scala 2.1
Seq
转换为ArrayBuffer
ArrayBuffer(mySeq : _*)
一些说明:这使用了中的apply方法。该方法的签名是
def apply [A] (elems: A*): ArrayBuffer[A]
这意味着它接受数量可变的参数。例如:
ArrayBuffer(1, 2, 3, 4, 5, 6, 7, 8)
也是一个有效的呼叫。属性:*向编译器指示应使用一个Seq来代替变量数量的参数(请参阅中的第4.6.2节)
编辑在Scala 2.1x之后,在中定义了一种方法.to[Coll]
,可按如下方式使用:
scala> import collection.mutable
import collection.mutable
scala> seq.to[mutable.ArrayBuffer]
res1: scala.collection.mutable.ArrayBuffer[Int] = ArrayBuffer(1, 2, 3)
scala> seq.to[mutable.Set]
res2: scala.collection.mutable.Set[Int] = Set(1, 2, 3)
重复:+1
顺序。托布弗必须是最清晰、最难忘的方式
scala> import collection.mutable
import collection.mutable
scala> seq.to[mutable.ArrayBuffer]
res1: scala.collection.mutable.ArrayBuffer[Int] = ArrayBuffer(1, 2, 3)
scala> seq.to[mutable.Set]
res2: scala.collection.mutable.Set[Int] = Set(1, 2, 3)