break和continue
go语言中的break和continue也和其语言一样,一般用在跳出循环,break跳出整个循环,continue跳出本次循环继续进行下次循环。
func main() {
rand.Seed(time.Now().UnixNano())
for {
fmt.Println(rand.Intn(10) + 100)
break
}
}
多层for循环中的 break和continue
如果多个for循环嵌套的话,那么break和continue跳出哪一个?是整个for还是当前for?下面代码运行的结果可以看出啦,break和continue只跳出当前的for循环
func main() {
rand.Seed(time.Now().UnixNano())
for {
fmt.Println("我是外面的for")
for {
fmt.Println("我是里面的for")
break
}
}
}
go to语句
goto语句用于跳到某一个标签。
func main() {
for {
fmt.Println("我是外面的for")
for {
fmt.Println("我是里面的for")
goto breakhere
}
}
breakhere:
fmt.Println("breakarea")
os.Exit(0)
}
for 循环标签
在for循环中的标签的作用,用于多层for循环嵌套的时候,break和continue跳转问题,默认情况下break和continue只跳出当前的for
func main() {
out:
for {
fmt.Println("i am out")
for {
break out
}
}
}