每月一號例行技術複習 —— Golang 流程控制

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")

今天偷懶了,複習一點點,看閱兵去啦~~~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章