scala.collection.breakOut vs views
Esta respuesta tan describe comoscala.collection.breakOut
Se puede utilizar para evitar la creación de colecciones intermedias inútiles. Por ejemplo, aquí creamos un intermedio.Seq[(String,String)]
:
val m = List("A", "B", "C").map(x => x -> x).toMap
Mediante el usobreakOut
Podemos evitar la creación de este intermedio.Seq
:
val m: Map[String,String] = List("A", "B", "C").map(x => x -> x)(breakOut)
Las vistas resuelven el mismo problema. y además elementos de acceso perezosamente:
val m = (List("A", "B", "C").view map (x => x -> x)).toMap
Estoy asumiendo la creación de laView
los envoltorios son bastante baratos, así que mi pregunta es: ¿hay alguna razón real para usarlos?breakOut
terminadoView
s?