一.goto

  • goto是Go语言中的一个关键字
  • goto让编译器执行时跳转到特定位置

    • Loop是标记名(Label),名称任意,习惯上名称为Loop
      1. fmt.Println("执行程序")
      2. i := 6
      3. if i == 6 {
      4. goto Loop
      5. }
      6. fmt.Println("if下面输出")
      7. Loop:
      8. fmt.Println("loop")
  • 可以有多个,但是标签(Labal)定义了就必须使用

    1. fmt.Println("执行程序")
    2. i := 6
    3. if i == 6 {
    4. goto Loop
    5. }
    6. fmt.Println("if下面输出")
    7. Loop:
    8. fmt.Println("loop")
    9. Loop1: //报错:label Loop1 defined and not used
    10. fmt.Println("Loop1")
  • goto也可以用于跳出循环,执行指定标签位置代码

    1. for i := 0; i < 5; i++ {
    2. fmt.Println(i)
    3. if i == 2 {
    4. goto abc
    5. }
    6. }
    7. fmt.Println("for循环执行结束")
    8. abc:
    9. fmt.Println("abc")
    10. fmt.Println("程序结束")