¿Hay alguna forma concisa de convertir un Seq
en ArrayBuffer
en Scala?Convertir Seq en ArrayBuffer
Respuesta
Esto funcionará:
ArrayBuffer(mySeq : _*)
Algunas explicaciones: se utiliza el método de aplicación en los ArrayBuffer companion object. La firma de ese método es
def apply [A] (elems: A*): ArrayBuffer[A]
lo que significa que requiere una cantidad variable de argumentos. Por ejemplo:
ArrayBuffer(1, 2, 3, 4, 5, 6, 7, 8)
es también una llamada válida. La ascripción: _ * indica al compilador que se debe usar un Seq en lugar de esa cantidad variable de argumentos (ver Sección 4.6.2 en el Scala Reference).
Gracias Philippe, esto funciona bien para mí. – classicalist
scala> val seq = 1::2::3::Nil
seq: List[Int] = List(1, 2, 3)
scala> seq.toBuffer
res2: scala.collection.mutable.Buffer[Int] = ArrayBuffer(1, 2, 3)
EDITAR Después de 2.1x Scala, hay un método .to[Coll]
definido en TraversableLike, que puede ser utilizado de la siguiente manera:
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 'seq.toBuffer' tiene que ser la forma más clara y memorable – karmakaze
- 1. clojure convertir lazy-seq en hash map
- 2. Forma idiomática de convertir A => Seq [B]
- 3. Seq seq tipo como un parámetro miembro en F #
- 4. ArrayBuffer vs Blob y XHR2
- 5. Mezclar parte de un ArrayBuffer en contexto
- 6. ¿Scala tiene un método API que convierte un Seq [Opción [T]] en Seq [T]?
- 7. F # Seq diff
- 8. ¿jQuery $ .ajax o $ .load permiten responseType arrayBuffer?
- 9. Mensajes de datos binarios de Websocket (ArrayBuffer)
- 10. Heredar de Seq
- 11. Pivote o zip a seq <seq<'a>> en F #
- 12. Método que toma Seq [T] para devolver String en lugar de Seq [Char]
- 13. Seq de coincidencia de patrones en Haskell
- 14. `seq` en las funciones aplicadas parcialmente
- 15. Cuenta Seq número de elementos
- 16. la función seq y rigor
- 17. Seq test vacío con specs2
- 18. Scala ¿Tengo que convertir a un Seq al crear una colección de un iterable?
- 19. zipWith (mapeo a través de múltiples Seq) en Scala
- 20. Scala ArrayBuffer eliminar todos los elementos con un prédicat
- 21. ¿Cómo enviar arraybuffer como binario a través de Websocket?
- 22. una manera idiomática de inicializar un Scala ArrayBuffer?
- 23. Cómo detectar detectar si XMLHttpRequest admite responseType = "arraybuffer"?
- 24. Funciones variadas de Scala y Seq
- 25. clojure cons vs conj con lazy-seq
- 26. ¿Cómo devuelvo (seq "foo") a una cadena?
- 27. Implementando Seq [T] para CPS-Classes
- 28. Clojure: cons (seq) vs. conj (lista)
- 29. costo Tiempo de Haskell `operador seq`
- 30. Escribo un seq en F # en el archivo de salida
duplicado: http://stackoverflow.com/questions/3074118/scala-how-do-i-convert-a-mapint-any-to-a-sortedmap-or-a-treemap – sschaef