복붙노트

[SCALA] 효율적으로 스칼라의 문자 / 문자열을 n 번 반복

SCALA

효율적으로 스칼라의 문자 / 문자열을 n 번 반복

좀 더 효율적으로 다음을 수행하고 싶습니다 :

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

해결법

  1. ==============================

    1.문자열의 당신은 StringOps를 통해 작동하고 무대 뒤에 StringBuffer를 사용 "ABC"* 3을 쓸 수 있습니다.

    문자열의 당신은 StringOps를 통해 작동하고 무대 뒤에 StringBuffer를 사용 "ABC"* 3을 쓸 수 있습니다.

    char.toString이 * n은 틀림없이 명확하지만 문자의 난, 당신의 솔루션은 매우 합리적이라고 생각합니다. 당신이 List.fill 버전을 의심 할 어떤 이유가 있나요 당신의 요구에 효율적으로 충분하지 않다? 당신은 (StringOps에 * 유사) StringBuffer를를 사용하는 것이 자신 만의 방법을 쓸 수,하지만 난 당신이 그 프로그램에 문제가 있다는 구체적인 증거가있는 경우에만 효율성에 대한 걱정 먼저 명확성을 위해 목표로 제안했다.

  2. from https://stackoverflow.com/questions/31637100/efficiently-repeat-a-character-string-n-times-in-scala by cc-by-sa and MIT license