РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1 of 1593 menu

Условный оператор if

Условный оператор if в Go выполняет блок кода, если указанное логическое условие возвращает true. В отличие от многих других языков, в Go условие не заключается в круглые скобки, но фигурные скобки вокруг тела оператора обязательны. Оператор if также поддерживает краткую запись с инициализацией переменной перед проверкой условия.

Синтаксис

if condition { // код выполняется, если condition == true }

Базовый синтаксис оператора if состоит из ключавого слова if, за которым следует логическое выражение, и блока кода в фигурных скобках. Условие всегда должно возвращать логическое значение (bool).

Пример

Проверим, является ли число положительным:

package main import "fmt" func main() { x := 10 if x > 0 { fmt.Println("x is positive") } }

Результат выполнения кода:

"x is positive"

Краткая инициализация в if

В Go оператор if позволяет объявить переменную, которая будет видна только внутри блока условия и его веток else. Это удобно, когда нужно выполнить вычисление и сразу проверить его результат.

Пример

Проверим четность числа с инициализацией переменной внутри if:

package main import "fmt" func main() { if num := 42; num%2 == 0 { fmt.Println("num is even") } }

Результат выполнения кода:

"num is even"

Пример

Переменная, объявленная в if, недоступна за пределами оператора:

package main import "fmt" func main() { if val := 100; val > 0 { fmt.Println(val, "is positive") } // fmt.Println(val) // ошибка: val не определена }

Результат выполнения кода:

"100 is positive"

Пример

Оператор if с инициализацией часто используется при работе с функциями, которые возвращают значение и ошибку:

package main import ( "fmt" "strconv" ) func main() { if num, err := strconv.Atoi("123"); err == nil { fmt.Println("Parsed number:", num) } }

Результат выполнения кода:

"Parsed number: 123"

Вложенные условия

Операторы if могут быть вложены друг в друга для проверки нескольких условий последовательно.

Пример

Проверим число на положительность и четность с помощью вложенных if:

package main import "fmt" func main() { x := 8 if x > 0 { if x%2 == 0 { fmt.Println("x is positive and even") } } }

Результат выполнения кода:

"x is positive and even"

Смотрите также

  • оператор else,
    который выполняет код при ложном условии
  • оператор switch,
    который проверяет множество значений
  • оператор fallthrough,
    который передает управление в следующую ветку switch
  • оператор for,
    который организует циклы в Go
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить