Menu
Coddy logo textTech

Оператор 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. Когда находится совпадение, выполняется код этого варианта. Обратите внимание, как можно объединить несколько значений в одном 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")
}
challenge icon

Задание

Легко

Напишите функцию getSeasonActivity, которая принимает season и возвращает рекомендованное занятие для этого сезона.

Используйте оператор switch для сопоставления сезона и возврата соответствующего занятия.

Варианты (Cases):

  • "Spring" - вернуть "Go hiking"
  • "Summer" - вернуть "Go swimming"
  • "Fall", "Autumn" - вернуть "Go apple picking" (оба варианта должны возвращать одно и то же занятие)
  • "Winter" - вернуть "Go skiing"
  • Любое другое значение - вернуть "Stay home"

Параметры:

  • season (String): Название сезона

Возвращает: Рекомендованное занятие в виде String

Попробуйте сами

func getSeasonActivity(season: String) -> String {
    // Напишите код здесь
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы