Как эффективно создать строку с определенной длиной и одинаковым значением в Kotlin - PullRequest
0 голосов
/ 15 сентября 2018

Я знал, что это может быть достигнуто с помощью цикла for, но я ищу лучшее решение.

createDummyString(1,'A') = 'A'
createDummyString(2.'A') = 'AA'

Это будет использоваться в палач.Спасибо.

Ответы [ 2 ]

0 голосов
/ 15 сентября 2018

@ leonardkraemers ответ является абсолютно верным, и String.repeat проверяет количество повторений и безопаснее в использовании.

Хотя, если вы хотите написать это самостоятельно, вы также можете сделать это следующим образом:

val str = buildString { (1..5).forEach({ append("A") }) }

Вы можете изменить логику для генерации определенных последовательностей, подобных приведенным ниже, для FizzBuzz:

val str = buildString {
        (1..50).forEach({
            append(" ")

            append(when (0) {
                it % 15 -> "FizzBuzz"
                it % 3 -> "Fizz"
                it % 5 -> "Buzz"
                else -> it
            })

            append(",")
        })
    }

Это дает вам хорошую серию из 1, 2, Fizz, 4, Buzz, Fizz, 7, 8, Fizz, Buzz, 11, Fizz, 13, 14, FizzBuzz,

0 голосов
/ 15 сентября 2018

Вы можете сделать это, как в примере ниже. Чтобы узнать больше о строках, прочитайте это: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html

fun createDummyString(repeat : Int, alpha : Char) = alpha.toString().repeat(repeat)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...