Класс CharProgression
Класс CharProgression представляет собой последовательность символов,
которая имеет начальный символ, конечный символ и шаг. Данный класс
реализует интерфейс Iterable, что позволяет
использовать его в циклах и других операциях, работающих с последовательностями.
Экземпляры CharProgression обычно создаются с помощью оператора
.. (две точки) для создания прогрессии с шагом 1 или
функции downTo и step для настройки прогрессии.
Создание CharProgression
Создать прогрессию символов можно несколькими способами:
val progression1 = 'a'..'z'
val progression2 = 'z' downTo 'a'
val progression3 = ('a'..'z') step 2
val progression4 = ('z' downTo 'a') step 3
Свойства
Класс CharProgression имеет следующие свойства:
val first: Char // первый символ прогрессии
val last: Char // последний символ прогрессии
val step: Int // шаг прогрессии
Пример
Создадим прогрессию символов от 'a' до 'f'
с шагом 1 и выведем все символы:
val progression = 'a'..'f'
for (char in progression) {
print("$char ")
}
Результат выполнения кода:
a b c d e f
Пример
Создадим прогрессию символов от 'f' до 'a'
с шагом 2 и выведем все символы:
val progression = ('f' downTo 'a') step 2
for (char in progression) {
print("$char ")
}
Результат выполнения кода:
f d b
Пример
Проверим, содержит ли прогрессия определенный символ:
val progression = 'a'..'z'
val containsC = 'c' in progression
val containsZ = 'Z' in progression
println("Contains 'c': $containsC")
println("Contains 'Z': $containsZ")
Результат выполнения кода:
Contains 'c': true
Contains 'Z': false
Пример
Преобразуем прогрессию символов в список:
val progression = ('a'..'e') step 2
val charList = progression.toList()
println(charList)
Результат выполнения кода:
[a, c, e]
Пример
Используем прогрессию символов для создания строки:
val progression = '0'..'9'
val digitsString = progression.joinToString("")
println(digitsString)
Результат выполнения кода:
0123456789