batik:
¿Hay una manera de copiar algo de la lista (o cadena combinada si es necesario) N veces en Java utilizando la API de corriente
Si la lista consiste en {"Hello", "world"}
y N = 3, el resultado debería ser{"Hello", "world", "Hello", "world", "Hello", "world"}
Lo que he hecho hasta ahora es conseguir combinar elemento de cadena y no estoy seguro de cómo procees para copiarlo n veces. Si bien puedo hacerlo externamente, me gustaría ver si es posible hacer con la ayuda de las corrientes
Optional<String> sentence = text.stream().reduce((value, combinedValue) -> { return value + ", " + combinedValue ;});
Me gustaría utilizar la corriente, porque tengo la intención de continuar con otras operaciones de secuencias después de la anterior
Eran :
Se puede utilizar Collections.nCopies
:
List<String> output =
Collections.nCopies(3,text) // List<List<String>> with 3 copies of
// original List
.stream() // Stream<List<String>>
.flatMap(List::stream) // Stream<String>
.collect(Collectors.toList()); // List<String>
Este producto será el List
:
[Hello, World, Hello, World, Hello, World]
para su entrada de la muestra.