go学习之流程控制
1、if语句
Go语言规定与if
匹配的左括号{
必须与if和表达式
放在同一行,{
放在其他位置会触发编译错误。 同理,与else
匹配的{
也必须与else
写在同一行,else
也必须与上一个if
或else if
右边的大括号在同一行。
if 表达式1 { 分支1 } else if 表达式2 { 分支2 } else{ 分支3 }
func ifDemo1() { score := 65 if score >= 90 { fmt.Println("A") } else if score > 75 { fmt.Println("B") } else { fmt.Println("C") } }
2、for语句
基本格式
for 初始语句;条件表达式;结束语句{ 循环体语句 }
break和continue func main() { for i := 0; i < 5; i++ { if i == 2 { break //跳出for循环 } fmt.Println(i) } } func main() { for i := 0; i < 5; i++ { if i == 2 { continue //跳出本次for循环 } fmt.Println(i) } fmt.Printf("for循环结束") }
跳出多层循环
func main() { //跳出多层循环 var flag = false for i := 0; i < 5; i++ { for j := 'A'; j < 'Z'; j++ { if j == 'C' { flag = true break //跳出for循环 } fmt.Println("%v-%c", i, j) } if flag { fmt.Println("结束外层循环") break } } }
func main() { //循环字符串/数组 //var s = "123456" nums := []int{2, 3, 4} for k, v := range nums { fmt.Print(k) fmt.Println(v) } }
for 循环打印九九乘法表 func main() { for i := 1; i < 10; i++ { for j := 1; j <= i; j++ { fmt.Printf("%d*%d=%d\t", j, i, j*i) } fmt.Println() } }