上から条件に当てはまるものを探します。
1度当てはまるものがあれば、その後は判定しません。
num := 9
if num%2 == 0 {
fmt.Println("even")
} else if num%3 == 0 {
fmt.Println("by3") // by3
} else {
fmt.Println("odd")
}
また、判定する対象を、if文の中に記述して短縮することもできます。
セミコロンを用いて最初の条件文に記述します。
if num := 9; num%2 == 0 {
fmt.Println("even")
} else if num%3 == 0 {
fmt.Println("by3") // by3
} else {
fmt.Println("odd")
}
fmt.Println(num) // エラー
if文の中に記述すると、その変数はif文の外から参照できません。
変数をif文の外で使用しない場合に適した記述方法です。
次の様に関数と共に用いることもできます。
func decision(x int) string {
if x%2 == 0 {
return "even"
} else if x%3 == 0 {
return "by3"
} else {
return "odd"
}
}
func main() {
fmt.Println(decision(11)) // odd
}