Повторение — безопасное извлечение значения
Часть раздела Основы путешествия по Swift на Coddy. Урок 15 из 86.
Задание
ЛегкоНапиши функцию formatPlayerInfo, которая принимает имя игрока name, счёт score и уровень level в виде строк и возвращает отформатированную сводку об игроке.
Используй все три изученных тобой способа извлечения значений, чтобы обработать потенциально отсутствующие значения:
- Используй
guard let, чтобы проверить, корректно ли имя (не пустое). Если имя пустое, немедленно верни"Unknown player". - Используй
??(оператор объединения с nil), чтобы задать счёт по умолчанию"0", если поле счёта пустое. - Используй
if let, чтобы проверить, корректен ли уровень (не пустой). Если значение есть, включи его в результат; в противном случае пропусти часть с уровнем.
Формат вывода:
- Если уровень указан:
"[name] - Score: [score], Level: [level]" - Если уровень пустой:
"[name] - Score: [score]"
Параметры:
name(String): имя игрока (пустая строка обозначает nil)score(String): счёт игрока (пустая строка обозначает nil)level(String): уровень игрока (пустая строка обозначает nil)
Возвращает: Отформатированную строку с информацией об игроке или "Unknown player", если имя пустое.
Подсказка: Преобразуй пустые строки в опциональные значения внутри функции: проверь, пустые ли они, и если да, присвой им nil.
Попробуйте сами
func formatPlayerInfo(name: String, score: String, level: String) -> String {
// Напишите код здесь
}
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСоставное присваиваниеПовторение: простая математикаОператоры сравнения7Основы ввода-вывода
Функция printИнтерполяция строкВвод с ReadLineПреобразование типовПовторение: до 120Повторение: истина или ложь2Переменные
Let и VarАннотации типовЧислаСтрокаЛогический типСоглашения об именованииПовторение — инициализация переменных5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор разделения счёта
Приветственное сообщениеВвод данных14Массивы: продвинутый уровень
Срезы массивов. Часть 1Срезы массивов. Часть 2Операторы последовательностейМетод Contains3Опциональные значения
Что такое опциональные значенияИзвлечение значения с помощью if letGuard letОператор объединения с nilПовторение — безопасное извлечение значения6Принятие решений
Условный оператор ifIf — ElseПовторение: простой калькуляторОператор switchSwitch с диапазонами9Циклы
Цикл for-inЦикл whileЦикл repeat-whileПрерывание циклаПереход к следующей итерацииПовторение — факториалДиапазоны в циклахВложенный циклПовторение — динамический вводПотренируйтесь самостоятельно: Песочница Swift