Ключевое слово `else if`
Часть раздела Основы путешествия по GO на Coddy — урок 36 из 109.
Давайте узнаем, как использовать ключевое слово else if в Go для последовательной проверки нескольких условий. Это полезно, когда в вашей программе требуется более двух возможных вариантов развития событий.
Сначала давайте создадим программу, которая классифицирует температуру на основе различных диапазонов:
temp := 75
if temp < 50 {
fmt.Println("It's cold")
} else if temp < 80 {
fmt.Println("It's pleasant")
} else {
fmt.Println("It's hot")
}После выполнения этого кода программа выведет "It's pleasant" на экран. Вот почему: программа сначала проверяет, меньше ли temp (75), чем 50. Так как это ложно, она переходит к следующему условию и проверяет, меньше ли temp 80.
Так как 75 действительно меньше 80, выполняется этот блок кода и выводится "It's pleasant". Финальный блок else пропускается, так как условие уже было выполнено.
Условия проверяются по порядку сверху вниз, и выполняется только код для первого совпавшего условия. Как только условие выполняется, остальные условия не проверяются вовсе.
Задание
ЛегкоВ этом испытании вы попрактикуетесь в использовании ключевого слова else if для обработки нескольких условий.
У вас есть переменная weather, которая содержит строку, описывающую текущую погоду. Ваша задача — дополнить код, чтобы выводить разные сообщения в зависимости от погодных условий:
- Если значение "sunny", выведите "Wear sunscreen!"
- Если значение "rainy", выведите "Bring an umbrella!"
- Если значение "cold", выведите "Wear a jacket!"
- Для любого другого погодного условия выведите "Check the forecast!"
Шпаргалка
Используйте else if для последовательной проверки нескольких условий:
temp := 75
if temp < 50 {
fmt.Println("It's cold")
} else if temp < 80 {
fmt.Println("It's pleasant")
} else {
fmt.Println("It's hot")
}Условия проверяются сверху вниз, и выполняется только первое совпавшее условие. Как только условие выполнено, остальные условия пропускаются.
Попробуйте сами
package main
import "fmt"
func main() {
// Эта переменная содержит текущее состояние погоды
weather := "rainy"
// TODO: Завершите оператор if-else if-else, чтобы вывести соответствующее сообщение
if weather == "sunny" {
fmt.Println("Wear sunscreen!")
}
// Добавьте свой код здесь
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы сравнения и логические операторы
Операторы сравнения — Часть 1Операторы сравнения — Часть 2Логический оператор ANDЛогический оператор ORЛогический оператор NOTОсновы приоритета операторовИтоги: выполнение сравнений7Управляющие конструкции: Циклы
Что такое цикл `for`Цикл `for` — основыЦикл `for` — только условиеКлючевое слово `break`Ключевое слово `continue`Вложенные циклыИтоги — повторение действий2Переменные и базовые типы данных
Что такое переменнаяВывод типов с помощью `:=`Целые числа (int)Числа с плавающей точкойЛогический тип (Booleans)СтрокиНулевые значения (Zero Values)КонстантыПравила именованияИтоги: переменные и типы5Основы ввода-вывода
Форматированный выводСпецификаторы форматаВывод типовБазовый ввод данных пользователемИтоги: ввод и вывод8Функции
Понимание функцийОбъявление функцииВызов функцийПараметры функцииВозврат одного значенияВозврат нескольких значенийИменованные возвращаемые значенияОсновы области видимости функцийИтоги — создание переиспользуемого кода3Базовые операторы
Арифметические операторыОператор деленияОператор остатка от деленияОператор присваиванияКомбинированные операторы присваиванияИнкремент и декрементПовторение — Вычисления6Управление потоком: Условные конструкции
Оператор `if`Ключевое слово `else`Ключевое слово `else if`Затенение переменных в `if`Инициализация переменныхОператор `switch`Switch с выражениямиSwitch без выраженийКлючевое слово `fallthrough`Итоги — Принятие решений