GO语言-if其他结构和多重嵌套
一. if … else 结构
- if 可以单独使用也可以结合else使用,当满足互斥条件时使用if…else结构
- if..else结构中如果if成立执行if否则执行else
1
2
3
4
5
6
7
8func main() {
i := 59
if i >= 60 {
fmt.Println("及格")
} else{
fmt.Println("不及格")
}
}
二.if多重嵌套
- if每种结构都可以相互嵌套
- 理论讲if可以很多层嵌套
- 两层嵌套代码示例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19func main() {
score := 77
if score >= 60 {
if score >= 60 && score < 70 {
fmt.Println("及格")
}
if score >= 70 && score < 80 {
fmt.Println("中等")
}
if score >= 80 && score < 90 {
fmt.Println("良好")
}
if score >= 90 && score <= 100 {
fmt.Println("优秀")
}
} else {
fmt.Println("不及格")
}
}
三.if … else if …. else结构
- 当需要判断多个条件时使用这种结构
- 这个结构是一个整体.只要有一个条件成立后面的都不判断,立即结束
- else可以没有
- 改写嵌套代码,修改如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14func main() {
score := 77
if score >= 90 {
fmt.Println("优秀")
} else if score >= 80 {
fmt.Println("良好")
} else if score >= 70 {
fmt.Println("中等")
} else if score >= 60 {
fmt.Println("及格")
} else {
fmt.Println("不及格")
}
}