if单独使用
-
if单独使用时只影响到自己对应的代码块
func main() { score := 65 if score >= 60 { fmt.Println("及格") } }
- 可以在if 表达式中声明变量,这个变量的范围只在if中能够使用
func main() { if score:=60; score>=60{ fmt.Println("及格了") } }
- 多个单独if使用时相互没有影响
func main() { score := 65 if score >= 60 { fmt.Println("及格") } if score < 60 { fmt.Println("不及格") } }
-
if 可以单独使用也可以结合else使用,当满足互斥条件时使用if...else结构
-
if..else结构中如果if成立执行if否则执行else
func main() { i := 59 if i >= 60 { fmt.Println("及格") } else{ fmt.Println("不及格") } }
if多重嵌套
-
if每种结构都可以相互嵌套
-
理论讲if可以很多层嵌套
-
两层嵌套代码示例
func 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可以没有
-
改写嵌套代码,修改如下
func 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("不及格") } }