golang语言中的goto 跳转到指定标签

发布于 1 年前 作者 phonegap100 303 次浏览 来自 分享

golang语言中的goto语句通过标签进行代码间的无条件跳转。goto语句可以在快速跳出循环、避免重复退出上有一定的帮助。Go语言中使用goto语句能简化一些代码的实现过程。

package main
import "fmt"
func main() {
	var n int = 30
	fmt.Println("ok1")
	if n > 20 {
		goto label1
	}
	fmt.Println("ok2")
	fmt.Println("ok3")
	fmt.Println("ok4")

label1:

	fmt.Println("ok5")
	fmt.Println("ok6")
	fmt.Println("ok7")

}

输出结果: d:\golang\src\demo01>go run main.go ok1 ok5 ok6 ok7

使用goto语句能简化代码:

package main

import "fmt"

func main() {
	for i := 0; i < 10; i++ {
		for j := 0; j < 10; j++ {
			if j == 2 {
				// 设置退出标签
				goto breakTag
			}
			fmt.Printf("%v-%v\n", i, j)
		}
	}
	return
	// 标签
breakTag:
	fmt.Println("结束for循环")
}

输出结果: d:\golang\src\demo01>go run main.go 0-0 0-1

回到顶部