Golang中的if语句

Go语言中的if语句和其他语言中的类似,都是根据给定的条件表达式运算结果来,判断执行流程。

Go语言if语句语法

1
2
3
if  布尔表达式 {
/* 在布尔表达式为true时执行 */
}

注意:在go语言中 布尔表达式不适用括号。

Go语言if语句实例演示

根据布尔值flag判断

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package main

import "fmt"

func main() {
a := 1
b := 2

if a > b {
fmt.Printf("a: %v\n", a)
} else {
fmt.Printf("b: %v\n", b)
}

flag := true
if flag {
fmt.Printf("flag: %v\n", flag)
}
}

运行结果

1
2
b: 2
flag: true

根据年龄判断是否成年

1
2
3
4
5
6
7
8
9
10
11
12
13
package main

import "fmt"

func main() {
age := 23
if age > 18 {
fmt.Println("你是成年人")
} else {
fmt.Println("你是未成年")
}
}

运行结果

1
你是成年人

注意作用域

初始变量可以声明在布尔表达式里面,注意它的作用域只存在这个if判断中,其他地方不能用

1
2
3
4
5
6
7
8
9
10
11
12
package main

import "fmt"

func main() {
if age := 23; age > 18 {
fmt.Println("你是成年人")
} else {
fmt.Println("你是未成年")
}
}

运行结果

1
你是成年人

不能用0或者非0表示真假

1
2
3
4
5
6
func test4() {
var i = 1
if i { //编译失败
fmt.Println("here)
}
}

Go语言if语句使用提示:

1.不需要使用括号将条件包含起来

2.大括号{}必须存在,即使只有一行语句

3.左括号必须在if或者else的同一行

4.在if之后,条件语句之前,可以添加变量初始化语句,使用分隔