Оператор switch
Часть раздела Основы путешествия по Swift на Coddy. Урок 29 из 86.
Когда нужно сравнить одно значение со множеством возможных вариантов, оператор switch — более лаконичная альтернатива длинным цепочкам else if. Он особенно полезен, когда нужно обработать несколько отдельных случаев.
let day = "Monday"
switch day {
case "Monday":
print("Start of the week")
case "Friday":
print("Almost weekend!")
case "Saturday", "Sunday":
print("Weekend!")
default:
print("Regular day")
}Swift сравнивает значение после switch с каждым case. Когда он находит совпадение, он выполняет код этого случая. Обрати внимание, что можно объединить несколько значений в одном случае, используя запятые.
Ветвь default обрабатывает любые значения, которые не соответствуют другим ветвям: она обязательна, если ваши ветви не охватывают все возможные значения. В отличие от некоторых других языков, конструкция switch в Swift не переходит автоматически к следующей ветви, поэтому вам не нужны операторы break.
let grade = "B"
switch grade {
case "A":
print("Excellent")
case "B":
print("Good")
case "C":
print("Fair")
default:
print("Needs improvement")
}Задание
ЛегкоНапишите функцию getSeasonActivity, которая принимает season и возвращает рекомендуемое занятие для этого времени года.
Используйте оператор switch, чтобы сопоставить время года и вернуть подходящее занятие.
Варианты:
"Spring"— вернуть"Go hiking""Summer"— вернуть"Go swimming""Fall","Autumn"— вернуть"Go apple picking"(для обоих вариантов должно возвращаться одно и то же занятие)"Winter"— вернуть"Go skiing"- Любое другое значение — вернуть
"Stay home"
Параметры:
season(String): название времени года
Возвращает: рекомендуемое занятие в виде String
Попробуйте сами
func getSeasonActivity(season: 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