gama de scala para largo
Soy nuevo en el lenguaje Scala.
Necesito Range for Long type.
Necesito una Lista de [1, 2, 3 ... 10000000] con el paso 1. Si uso hasta / para obtener un error debido a que uso Long en lugar de Int.
Intento escribir una función simple que espera un inicio, un final y una Lista vacía y genera una Lista de [inicio ... final].
Aquí está mi función:
<code>def range_l(start : Long, end : Long, list : List[Long]) : List[Long] = { if (start == end){ val add_to_list = start :: list return add_to_list } else { val add_to_list = start :: list range_l(start + 1, end, add_to_list) } } </code>
Si lo llamo así:range_l(1L, 1000000L, List())
yo obtengoOutOfMemory
error en la siguiente línea:add_to_list = start :: list
¿Qué puedes aconsejarme? Como puedo conseguirRange[Long]
o como puedo optimizar la función. ¿Cómo puedo evitar OutOfMemory?
Gracias.