和其他编程语言一样,golang也是通过if语句进行条件判断,格式如下:
if 表达式{
分支1
}else if{
分支2
}else{
分支3
}
需要特别注意的是:
Go语言规定:与 if 匹配的左括号 { 必须与if和表达式放在同一行,如果尝试将“{”放在其他位置,将会触发编译错误。
同理,与else匹配的“{”也必须与else在同一行,else也必须与上一个if或else if的右边的大括号在一行。
举例:
package main
import (
"fmt"
)
func main() {
var age int = 16 //定义一个变量,年龄,赋值16
if age >= 18 { //判断年龄如果大于等于18
fmt.Println("你已经成年了")
} else {//否则,小于18
fmt.Println("你还未成年")
}
}
输出如下:
特殊写法:
if还有一种特殊的写法,可以在if表达式之前添加一个执行语句,再根据变量值进行判断,代码如下:
if zt:=getStatus();zt!=0 {
fmt.Println(zt)
return
}
这里假设getStatus()是一个带有返回值的函数,zt:=getStatus()是一个语句,执行getStatus()后,将函数返回值保存到zt变量中。
zt!=0才是if的判断表达式,当zt不等于0时,打印变量并返回。
这种写法可以将返回值与判断放在一行进行处理,而且返回值的作用范围被限制在if、else语句组合中。