Quiero usar la clase Stream en scala para repetir una lista dada infinitamente.Scala, repita una lista finita infinitamente
Por ejemplo, la lista (1,2,3,4,5) Quiero crear una secuencia que me da (1,2,3,4,5,1,2,3,4,5,1 , 2,3 ....)
Para que pueda ajustar la operación de toma. Sé que esto se puede implementar de otras maneras, pero quiero hacerlo de esta manera por alguna razón, solo me pones de humor :)
Así que la idea es que con este ciclo infinito creado a partir de alguna lista, pueda usar Take Operation, y cuando llega al final de la lista, se cicla.
¿Cómo hago una secuencia que simplemente repite una lista dada?
Me gustó esta respuesta lo mejor, continuamente en el objeto compañero de Stream es realmente lo que estaba buscando. También combinado con flatten y tolist obtengo exactamente lo que quiero :) BTW, somestream.join.take (10) .toList, ¿alguien puede explicar la necesidad de la notación object.function() y por qué es necesaria aquí? Usualmente puede tener "seq take 10", y algo como "seq take 10.toList" ¿funcionaría? – Felix
Creo que vale la pena señalar que "Stream.continually()" aparentemente no estaba presente en versiones anteriores de 2.8 – Felix
En 2.7, 'Stream.continually' era' Stream.const' y 'streams.flatten' era' Stream.concat (transmisiones) ' – retronym