Go в примери: Ако ли/Иначе (If/Else)

Разклоняване1 на програмата с if и else в Go е лесно.


  1. branching – разклоняване
package main
import "fmt"
func main() {

Ето един прост пример.

    if 7%2 == 0 {
        fmt.Println("7 е четно")
    } else {
        fmt.Println("7 е нечетно")
    }

Може да имате изявление if без else.

    if 8%4 == 0 {
        fmt.Println("8 се дели на 4")
    }

Логически действия като && и || често се срещат в условия.

    if 8%2 == 0 || 7%2 == 0 {
        fmt.Println("или 8, или 7 е четно")
    }

Условията могат да бъдад предшествани от изявление. Всички променливи, обявени в изявлението, могат да се ползват в текущото и всички последващи разклонения.

    if num := 9; num < 0 {
        fmt.Println(num, "е отрицателно")
    } else if num < 10 {
        fmt.Println(num, "е едноцифрено число")
    } else {
        fmt.Println(num, "е многоцифрено")
    }
}

Обърнете внимание, че не се нуждаете от кръгли скоби около условията, както е в повечето други езици за програмиране.

$ go run if-else.go
7 is odd
8 is divisible by 4
either 8 or 7 are even
9 has 1 digit

В Го няма троично “ако” (ternary if). Така че трябва винаги да се ползва пълното изявление if дори за съвсем прости условия.

Следващ пример: .