go在使用嵌套循环时不支持使用break 次数和continue 次数的用法,但是为了支持这个功能,go引入了循环标记。举个栗子。
var i, j int
outerLoop:
for i = 1; i < 5; i++ {
for j = 0; j < 1; j++ {
if i == 3 {
continue outerLoop
}
}
fmt.Println(i)
}
其实标记非常好理解,读懂这句话“论是continue还是break都会作用到outerLoop标记后的第一个循环里面”,上面的代码中continue相当于在第一个循环中continue,因此输出1 2 4