Golang控制语句只有四种:if、for、switch、跳转语句,虽简尤强。
if
var a int = 3
if a == 3 {
fmt.Println("a==3")
}
if b := 3; b == 3 && true || false {
fmt.Println("b==3")
} else if b != 3 {
fmt.Println("b!=3")
} else {
fmt.Println("error")
}
if true && (true || false || false) {
fmt.Println("输出")
}
for
var i, sum int
for i = 1; i <= 100; i++ {
sum += i
}
fmt.Println("sum =", sum)
s := "abc"
for i := range s {
fmt.Printf("%c\n", s[i])
}
for _, c := range s {
fmt.Printf("%c\n", c)
}
for i, c := range s {
fmt.Printf("%d, %c\n", i, c)
}
switch
var score int = 90
switch score {
case 90:
fmt.Println("优秀")
case 80:
fmt.Println("良好")
case 50, 60, 70:
fmt.Println("一般")
default:
fmt.Println("差")
}
switch s1 := 90; s1 {
case 90:
fmt.Println("优秀")
case 80:
fmt.Println("良好")
default:
fmt.Println("一般")
}
var s2 int = 90
switch {
case s2 >= 90:
fmt.Println("优秀")
case s2 >= 80:
fmt.Println("良好")
default:
fmt.Println("一般")
}
switch s3 := 90; {
case s3 >= 90:
fmt.Println("优秀")
case s3 >= 80:
fmt.Println("良好")
default:
fmt.Println("一般")
}
跳转语句
break和continue
for i := 0; i <= 9; i++ {
if 2 == i {
break
}
fmt.Println(i) // 0 1
}
for i := 10; i <= 19; i++ {
if 12 == i {
continue
}
fmt.Println(i) // 10 11 13 14 15 16 17 18 19
}
OuterLoop:
for i := 0; i <= 9; i++ {
for j := 0; j <= 9; j++ {
if i == 1 {
break OuterLoop
}
fmt.Printf("[%d %d]", i, j) // [0 0][0 1][0 2][0 3][0 4][0 5][0 6][0 7][0 8][0 9]
}
}
goto
for i := 0; i < 5; i++ {
for {
fmt.Println(i)
goto LABEL
}
}
fmt.Println("this is test")
LABEL:
fmt.Println("it is over")
今天偷懒了,复习一点点,看阅兵去啦~~~