- func forCase() {
- for i := 0; i < 10; i++ {
- if i == 5 {
- continue
- }
- fmt.Println("位置1 执行 for 语句块 i:", i)
- }
- fmt.Println("-------循环 slice ------")
- list := []int{1, 2, 3, 4, 5}
- for index, value := range list {
- fmt.Println("循环切片 执行 for 语句块 index:", index, "value:", value)
- }
- fmt.Println("-------循环 map ------")
- mp := map[string]string{"name": "tom", "age": "18"}
- for k, v := range mp {
- fmt.Println("循环map 执行 for 语句块 k:", k, "v:", v)
- }
- fmt.Println("-------循环 string ------")
- str := "你们是八九点钟的太阳"
- for index, value := range str {
- fmt.Println("循环string 执行 for 语句块 index:", index, "value:", value, "value:", string(value))
- }
- fmt.Println("------- 死循环 ------")
- var j int
- for {
- fmt.Println("死循环 执行 for 语句块:", j)
- j++
- if j >= 10 {
- break
- }
- }
- fmt.Println("-------- 循环嵌套循环------ ")
- for i := 0; i < 2; i++ {
- for j := 0; j < 2; j++ {
- fmt.Println("循环嵌套循环 i:", i, "j:", j)
- }
- }
- fmt.Println("-------- 循环嵌套循环 break 只能跳出当前循环---- ")
- for i := 0; i < 2; i++ {
- for j := 0; j < 2; j++ {
- fmt.Println("循环嵌套循环 i:", i, "j:", j)
- break
- }
- }
- fmt.Println("-------- 循环嵌套循环 break 跳出lab---- ")
- lab1:
- for i := 0; i < 2; i++ {
- for j := 0; j < 2; j++ {
- fmt.Println("循环嵌套循环 i:", i, "j:", j)
- break lab1
- }
- }
- }
复制代码- a is zero
- a is one
- a is not zero
- 位置1 执行 for 语句块 i: 0
- 位置1 执行 for 语句块 i: 1
- 位置1 执行 for 语句块 i: 2
- 位置1 执行 for 语句块 i: 3
- 位置1 执行 for 语句块 i: 4
- 位置1 执行 for 语句块 i: 6
- 位置1 执行 for 语句块 i: 7
- 位置1 执行 for 语句块 i: 8
- 位置1 执行 for 语句块 i: 9
- -------循环 slice ------
- 循环切片 执行 for 语句块 index: 0 value: 1
- 循环切片 执行 for 语句块 index: 1 value: 2
- 循环切片 执行 for 语句块 index: 2 value: 3
- 循环切片 执行 for 语句块 index: 3 value: 4
- 循环切片 执行 for 语句块 index: 4 value: 5
- -------循环 map ------
- 循环map 执行 for 语句块 k: name v: tom
- 循环map 执行 for 语句块 k: age v: 18
- -------循环 string ------
- 循环string 执行 for 语句块 index: 0 value: 20320 value: 你
- 循环string 执行 for 语句块 index: 3 value: 20204 value: 们
- 循环string 执行 for 语句块 index: 6 value: 26159 value: 是
- 循环string 执行 for 语句块 index: 9 value: 20843 value: 八
- 循环string 执行 for 语句块 index: 12 value: 20061 value: 九
- 循环string 执行 for 语句块 index: 15 value: 28857 value: 点
- 循环string 执行 for 语句块 index: 18 value: 38047 value: 钟
- 循环string 执行 for 语句块 index: 21 value: 30340 value: 的
- 循环string 执行 for 语句块 index: 24 value: 22826 value: 太
- 循环string 执行 for 语句块 index: 27 value: 38451 value: 阳
- ------- 死循环 ------
- 死循环 执行 for 语句块: 0
- 死循环 执行 for 语句块: 1
- 死循环 执行 for 语句块: 2
- 死循环 执行 for 语句块: 3
- 死循环 执行 for 语句块: 4
- 死循环 执行 for 语句块: 5
- 死循环 执行 for 语句块: 6
- 死循环 执行 for 语句块: 7
- 死循环 执行 for 语句块: 8
- 死循环 执行 for 语句块: 9
- -------- 循环嵌套循环------
- 循环嵌套循环 i: 0 j: 0
- 循环嵌套循环 i: 0 j: 1
- 循环嵌套循环 i: 1 j: 0
- 循环嵌套循环 i: 1 j: 1
- -------- 循环嵌套循环 break 只能跳出当前循环----
- 循环嵌套循环 i: 0 j: 0
- 循环嵌套循环 i: 1 j: 0
- -------- 循环嵌套循环 break 跳出lab----
- 循环嵌套循环 i: 0 j: 0
复制代码- switchCase("a", "b")
- func switchCase(alpha string, in interface{}) {
- switch alpha {
- case "a":
- fmt.Println("a")
- case "b":
- fmt.Println("b")
- case "c", "d":
- fmt.Println("c")
- fmt.Println("d")
- fallthrough
- case "e":
- fmt.Println("e")
- default:
- fmt.Println("default")
- }
- switch in.(type) {
- case string:
- fmt.Println("string")
- default:
- fmt.Println("default")
- }
- }
复制代码- -------- switch case----
- a
- string
复制代码- func gotoCase() {
- var a = 0
- lab1:
- fmt.Println("--------goto case------")
- for i := 0; i < 10; i++ {
- a += i
- if a == 5 {
- goto lab1
- }
- fmt.Println("----------a:", a, "i:", i)
- }
- }
复制代码- --------goto case------
- ----------a: 0 i: 0
- ----------a: 1 i: 1
- ----------a: 3 i: 2
- ----------a: 6 i: 3
- ----------a: 10 i: 4
- ----------a: 15 i: 5
- ----------a: 21 i: 6
- ----------a: 28 i: 7
- ----------a: 36 i: 8
- ----------a: 45 i: 9
复制代码 来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |