标签:就是 执行 run 重复 ++ 语句块 中间 == 默认
程序从上到下逐行地执行,中间没有任何判断和跳转
分支控制就是让程序有选择执行。有下面三种形式
- 单分支
- 双分支
- 多分支
if 条件表达式 {
//
}
if 条件表达式 {
//
} else {
//
}
if 条件表达式 {
//
} else if 条件表达式2 {
//
}
...
else {
}
if 条件表达式 {
if 条件表达式2 {
//
}
} else {
//
}
switch 表达式 {
case 表达式1, 表达式2, ...:
语句1
case 表达式3, 表达式4, ...:
语句2
...
default:
语句块
}
func main() {
a := 10
switch true {
case a > 10, a == 10:
fmt.Println("成功了")
default:
fmt.Println("没走到")
}
b := a / 10
switch b {
case 2, 3, 4, 5, 6, 7, 8, 9:
fmt.Println("没走到")
default:
fmt.Println("成功了")
}
}
a := 10;
switch {
case a > 10, a == 10:
fmt.Println("成功了")
default:
fmt.Println("没走到")
}
// 不推荐写法
switch a := 10; {
case a > 10, a == 10:
fmt.Println("成功了")
default:
fmt.Println("没走到")
}
a := 10
switch true {
case a > 10, a == 10:
fmt.Println("成功了")
fallthrough
default:
fmt.Println("没走到")
}
for 循环变量初始化; 循环条件; 循环变量迭代 {
循环操作(语句)
}
循环条件是返回一个布尔值的表达式
变体写法
for 循环判断条件 {
//
}
for {
//通常配合break 使用
}
for-range 方式
str := "abc"
for index, val := range str {
//
}
传统的对字符串的遍历是按照字节来遍历,而一个汉字在utf8编码是对应3个字节
var str string = "hello,world 上海"
str2 := []rune(str) // 将str转换为[]rune
for i := 0, i < len(str2); i++ {
//
}
// for-range 是按照字符方式遍历的,但是下标是字节数
var str string = "hello,world 上海"
for index, val := range str {
fmt.Printf("index=%d, val=%c \n“, index, val)
}
标签:就是 执行 run 重复 ++ 语句块 中间 == 默认
原文地址:https://www.cnblogs.com/weichen-code/p/12369351.html