有什么方法可以有效地做到这一点,可能是通过toBuffer还是方法?我的真正问题是我正在用解析器构建一个List,如下所示:
lazy val nodes: Parser[List[Node]] = phrase(( nodeA | nodeB | nodeC).*)
但是在构建它之后,我希望它成为一个缓冲区-我只是不确定如何直接从解析器构建一个缓冲区。
最佳答案
to
确实可以解决问题,并且使用起来很简单:
scala> val l = List(1,2,3)
l: List[Int] = List(1, 2, 3)
scala> l.to[ListBuffer]
res1: scala.collection.mutable.ListBuffer[Int] = ListBuffer(1, 2, 3)
在Scala 2.10.x中工作
对于scala 2.9.x,您可以执行以下操作:
scala> ListBuffer.empty ++= l
res1: scala.collection.mutable.ListBuffer[Int] = ListBuffer(1, 2, 3)
关于list - 如何将List转换为ListBuffer?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14443085/