lists create crear list scala listbuffer

create - ¿Cómo convertir Lista a ListBuffer?



lists scala (1)

¿Hay alguna manera de hacer esto de manera eficiente, tal vez a través de Buffer o de los métodos? Mi problema real es que estoy creando una lista a partir de un analizador, de la siguiente manera:

lazy val nodes: Parser[List[Node]] = phrase(( nodeA | nodeB | nodeC).*)

Pero después de compilarlo, quiero que sea un búfer en su lugar, simplemente no estoy seguro de cómo compilar un búfer directamente desde el analizador.


to hacer el truco, y es bastante trivial de usar:

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)

Trabaja en scala 2.10.x

Para scala 2.9.x, puedes hacer:

scala> ListBuffer.empty ++= l res1: scala.collection.mutable.ListBuffer[Int] = ListBuffer(1, 2, 3)