Как посчитать одинаковые символы в строке на kotlin?

Пользователь

от violette_robel , в категории: Другие , месяц назад

Как посчитать одинаковые символы в строке на kotlin?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от roma , месяц назад

@violette_robel 

Чтобы посчитать количество одинаковых символов в строке на Kotlin, вы можете воспользоваться циклом и Map для подсчета количества повторений каждого символа.


Вот пример кода на Kotlin, который показывает, как это можно сделать:

1
2
3
4
5
6
7
8
fun countChars(inputString: String): Map<Char, Int> {
    val charCount = mutableMapOf<Char, Int>()
    for (char in inputString) {
        val count = charCount.getOrDefault(char, 0)
        charCount[char] = count + 1
    }
    return charCount
}


В этом коде мы создаем переменную charCount, которая является изменяемым Map, используя оператор mutableMapOf(). Затем мы проходим по каждому символу входной строки с помощью цикла for, и для каждого символа увеличиваем счетчик в charCount с помощью метода getOrDefault(). Этот метод возвращает значение счетчика для символа, если он уже присутствует в charCount, или 0, если символ еще не встречался. Затем мы устанавливаем новое значение счетчика для символа в charCount.


В итоге функция countChars() возвращает Map<Char, Int>, в которой каждый символ входной строки является ключом, а значение является количеством его повторений в строке.


Вы можете вызвать эту функцию, передав в нее строку, как параметр, например:

1
2
3
val inputString = "hello world"
val charCount = countChars(inputString)
println(charCount)


Этот код выведет в консоль Map, содержащий количество повторений каждого символа в строке inputString.