Класс CharProgression

Класс CharProgression представляет собой последовательность символов, которая имеет начальный символ, конечный символ и шаг. Данный класс реализует интерфейс Iterable<Char>, что позволяет использовать его в циклах и других операциях, работающих с последовательностями. Экземпляры CharProgression обычно создаются с помощью оператора .. (две точки) для создания прогрессии с шагом 1 или функции downTo и step для настройки прогрессии.

Создание CharProgression

Создать прогрессию символов можно несколькими способами:

kotlinval progression1 = 'a'..'z'
val progression2 = 'z' downTo 'a'
val progression3 = ('a'..'z') step 2
val progression4 = ('z' downTo 'a') step 3

Свойства

Класс CharProgression имеет следующие свойства:

kotlinval first: Char    // первый символ прогрессии
val last: Char     // последний символ прогрессии
val step: Int      // шаг прогрессии

Пример

Создадим прогрессию символов от 'a' до 'f' с шагом 1 и выведем все символы:

kotlinval progression = 'a'..'f'

for (char in progression) {
  print("$char ")
}

Результат выполнения кода:

kotlina b c d e f

Пример

Создадим прогрессию символов от 'f' до 'a' с шагом 2 и выведем все символы:

kotlinval progression = ('f' downTo 'a') step 2

for (char in progression) {
  print("$char ")
}

Результат выполнения кода:

kotlinf d b

Пример

Проверим, содержит ли прогрессия определенный символ:

kotlinval progression = 'a'..'z'
val containsC = 'c' in progression
val containsZ = 'Z' in progression

println("Contains 'c': $containsC")
println("Contains 'Z': $containsZ")

Результат выполнения кода:

kotlinContains 'c': true
Contains 'Z': false

Пример

Преобразуем прогрессию символов в список:

kotlinval progression = ('a'..'e') step 2
val charList = progression.toList()

println(charList)

Результат выполнения кода:

kotlin[a, c, e]

Пример

Используем прогрессию символов для создания строки:

kotlinval progression = '0'..'9'
val digitsString = progression.joinToString("")

println(digitsString)

Результат выполнения кода:

kotlin0123456789

Смотрите также

  • класс Int,
    который представляет целые числа
  • класс Char,
    который представляет отдельный символ
  • класс String,
    который представляет строку символов
  • интерфейс Iterable,
    который представляет коллекцию, по которой можно итерироваться