Tenía una lista bastante grande de números. Necesitaba aplicar alguna operación sobre ellos, luego tomar solo aquellos resultados que satisfacen alguna condición. La lista es secuencial, así que una vez que encuentre el número que no satisface la condición, puedo dejar de buscar.Excepcional excepción al usar .view en la lista
quería evitar hacer demasiado computación, por lo que se trasladaron como en este ejemplo:
List(1,2,3,4,5).view.map(2 *).takeWhile(_ < 8)
pero me da una excepción:
java.lang.UnsupportedOperationException: SeqViewM(...).newBuilder
at scala.collection.TraversableViewLike$class.newBuilder(TraversableViewLike.scala:69)
at scala.collection.SeqViewLike$$anon$3.newBuilder(SeqViewLike.scala:77)
at scala.collection.IterableLike$class.takeWhile(IterableLike.scala:139)
at scala.collection.SeqViewLike$$anon$3.takeWhile(SeqViewLike.scala:77)
at scala.collection.SeqViewLike$$anon$3.takeWhile(SeqViewLike.scala:77)
Usando Scala 2.9.0.1 (igual comportamiento con 2.9.1). ¿Que esta mal aquí?
Funciona bien con 2,8 –