Основы Go

Go if, else and switch

Choose what runs with if and switch, including Go's switch without a value.

  • Начальный
  • Чтение: 4 мин
  • Примеров для запуска: 1
Что вы узнаете
  • if, else if, else
  • if with a short statement
  • switch and default
score = 87
  1. 1score >= 90false, skip
  2. 2score >= 70true
  3. 3"Good"this branch runs

The first true branch runs

An if statement runs a block only when its condition is true. switch compares one value with several cases, or, without a value, picks the first case that is true.

The conditions are checked from top to bottom and only the first true branch runs, so 87 prints Good. An if can declare a variable before its condition, as remainder shows. A case can list several values, and Go does not fall through to the next case.

Главное

  1. Conditions are checked from top to bottom.
  2. switch does not fall through to the next case.
  3. A case can list several values.

Пример на Go, который можно запустить

Go
Запустить код →
main.go
package main

import "fmt"

func main() {
	score := 87

	if score >= 90 {
		fmt.Println("Excellent")
	} else if score >= 70 {
		fmt.Println("Good")
	} else {
		fmt.Println("Keep practicing")
	}

	if remainder := score % 2; remainder == 0 {
		fmt.Println("even")
	} else {
		fmt.Println("odd")
	}

	switch {
	case score >= 90:
		fmt.Println("Grade: A")
	case score >= 80:
		fmt.Println("Grade: B")
	default:
		fmt.Println("Grade: C")
	}

	switch day := "sat"; day {
	case "sat", "sun":
		fmt.Println("weekend")
	default:
		fmt.Println("weekday")
	}
}
Получить кнопку запуска для этого примера Результат выполнения
Good
odd
Grade: B
weekend

Практика

Откройте пример в онлайн-компиляторе, измените значение или добавьте строку и попробуйте предсказать вывод до запуска. Затем намеренно сломайте код и прочитайте сообщение компилятора.

Закончили этот урок?

Отметьте его как изученный, чтобы следить за прогрессом.

Далее: FizzBuzz →

Попрактикуйтесь на задаче

Примените материал этого урока к реальной задаче. Каждая задача запускается в браузере, с мгновенными тестами и разбором от ИИ.

Все задачи