Итерация по строкам, ч. 2
Часть раздела Основы путешествия по Kotlin на Coddy. Урок 77 из 93.
Помимо базовой итерации, строки предлагают несколько полезных методов для создания новых строк из существующих. Распространённая задача — преобразовывать символы во время итерации и собирать результаты.
Вы можете создать новую строку, добавляя символы в StringBuilder или просто выполняя конкатенацию со строковой переменной:
val original = "hello"
var result = ""
for (char in original) {
result += char.uppercaseChar()
}
println(result) // HELLOМетод uppercaseChar() преобразует один символ в верхний регистр, а lowercaseChar() выполняет обратное преобразование. Эти методы работают с отдельными значениями Char, в отличие от uppercase(), который работает со строками целиком.
Ещё один практический приём — фильтрация символов во время итерации. Например, извлечение только цифр из смешанной строки:
val mixed = "a1b2c3"
var digits = ""
for (char in mixed) {
if (char.isDigit()) {
digits += char
}
}
println(digits) // 123Kotlin предоставляет полезные методы проверки символов, такие как isDigit(), isLetter() и isWhitespace(), которые возвращают true или false в зависимости от типа символа. Они упрощают фильтрацию или категоризацию символов во время итерации.
Задание
СреднеНапишите функцию extractLetters, которая принимает строку text и возвращает новую строку, содержащую только буквы, преобразованные в верхний регистр.
Пройдите по каждому символу, отфильтруйте небуквенные символы и преобразуйте оставшиеся символы в верхний регистр.
Параметры:
text(String): строка, которая может содержать буквы, цифры, пробелы и специальные символы
Возвращает: строку, содержащую только буквы из входных данных, все они преобразованы в верхний регистр (String)
Попробуйте сами
fun extractLetters(text: String): String {
// Напишите код здесь
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСоставное присваиваниеОператоры сравненияПовторение — простая математика7Базовый ввод-вывод
Функция PrintlnШаблоны строкВвод ReadLineПреобразование типовПовторение — лет до выхода на пенсиюПовторение — правда или ложь10Функции
Объявление функцииПараметры и аргументыВозвращаемые значенияИменованные аргументыЗначения по умолчаниюФункции с одним выражениемПовторение — функция SigmaПовторение — функция валидации13Итерация по последовательностям
Итерация по элементамМетод WithIndexИтерация по строкам, ч. 1Итерация по строкам, ч. 2Повторение — индексированные буквы2Переменные
Val и VarВывод типовЧислаСтрокаЛогическое значениеСоглашения об именованииПовторение — инициализация переменных5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Логические операторы, часть 3Тернарный оператор с выражением ifПовторение — простая логика8Калькулятор разделения счёта
Приветственное сообщениеВвод данных3Обработка null
Что такое безопасность nullТипы, допускающие nullОператор безопасного вызоваОператор ЭлвисаОсновы задания на функцииУтверждение ненулевого значенияПовторение — безопасный доступ6Принятие решений
Инструкция ifIf — ElseIf как выражениеВыражение whenWhen с диапазонамиПовторение — простой калькулятор9Циклы
Цикл ForЦикл WhileЦикл Do-WhileBreakContinueДиапазоны в циклахВложенный циклПовторение — факториалПовторение — динамический вводПотренируйтесь самостоятельно: Песочница Kotlin