veces varias una repetir que programa palabra numero mensaje imprimir imprima hola como caracter string scala char concatenation string-concatenation

varias - repetir string n veces java



Repita eficientemente un carácter/cadena n veces en Scala (1)

Para cadenas, puede escribir "abc" * 3 , que funciona a través de StringOps y utiliza un StringBuffer detrás de escena.

Para los personajes, creo que su solución es bastante razonable, aunque char.toString * n es posiblemente más clara. ¿Tiene alguna razón para sospechar que la versión List.fill no es lo suficientemente eficiente para sus necesidades? Podría escribir su propio método que usaría un StringBuffer (similar a * en StringOps ), pero sugeriría apuntar primero a la claridad y luego preocuparse por la eficiencia solo cuando tenga evidencia concreta de que ese es un problema en su programa.

Me gustaría hacer lo siguiente de manera más eficiente:

def repeatChar(char:Char, n: Int) = List.fill(n)(char).mkString def repeatString(char:String, n: Int) = List.fill(n)(char).mkString repeatChar(''a'',3) // res0: String = aaa repeatString("abc",3) // res0: String = abcabcabc