分支循环
在编写 Go 程序的时候,我们不仅会用前面学到的数据结构来存储数据,还会用到 if、switch、for 来进行条件判断和流程控制,今天我们就来一起学习下它们。
if
ifif 主要用于条件判断,语法为:
if 条件 {
# 业务代码
}先看一个简单例子:
package main
import "fmt"
func main() {
age := 7
if age > 6 {
fmt.Println("It's primary school")
}
}我们可以在条件中使用 & 或 || 来进行组合判断:
我们还可以使用 if..else if..else 来实现多分支的条件判断:
switch
如果我们的条件分支太多,可以考虑使用 switch 替换 if, 例如:
注意:在 Go 中 switch 只要匹配中了就会中止剩余的匹配项,这和 Java 很大不一样,它需要使用 break 来主动跳出。
switch 的 case 条件可以是多个值,例如:
注意: 同一个 case 中的多值不能重复。
switch 还可以使用 if..else 作为 case 条件,例如:
小技巧: 使用 switch 对 interface{} 进行断言,例如:
for
使用 for 来进行循环操作,例如:
使用 for..range 对数组、切片、map、 字符串等进行循环操作,例如:
注意: 这里的 i、v 是切片元素的位置索引和值。
注意: 这里的 i、v 是 map 的 一组键值对的键和值。
使用 continue 和 break 对循环进行控制,例如:
注意:
break会结束所有循环。continue会跳过当前循环直接进入下一次循环。
最后更新于
这有帮助吗?