If/Else
#
// Go における `if` と `else` を使った分岐の書き方は素直なものだ。
package main
import "fmt"
func main() {
// 基本的な例
if 7%2 == 0 {
fmt.Println("7 is even")
} else {
fmt.Println("7 is odd")
}
// else がなくても `if` 文を書ける
if 8%4 == 0 {
fmt.Println("8 is divisible by 4")
}
// 条件の前に文を書いてもよい。
// この文で宣言された変数は、いずれの分岐からも見える。
if num := 9; num < 0 {
fmt.Println(num, "is negative")
} else if num < 10 {
fmt.Println(num, "has 1 digit")
} else {
fmt.Println(num, "has multiple digits")
}
}
// 注意点として、条件を囲む丸括弧は必要ないが、波括弧は必須である。
$ go run if-else.go
7 is odd
8 is divisible by 4
9 has 1 digit
# Go には[3項演算子を使った分岐](http://en.wikipedia.org/wiki/%3F:)機能はないので、素朴な条件を書く場合でも `if` 文を書くことになる。