本文最后更新于202 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com
break
结束当前循环
没加break:
package main
import(
"fmt"
)
func main() {
for i := 1;i <=9 ;i ++{
fmt.Println("i的值是:",i)
}
}
结果:
添加一个break,使for循环在输出5后停止
package main
import(
"fmt"
)
func main() {
for i := 1;i <=9 ;i ++{
fmt.Println("i的值是:",i)
if i == 5 {
break //在i=5的时结束循环,不再输出5后面的值
}
}
}
输出结果:
break的作用范围
双重循环没加break时
package main
import (
"fmt"
)
func main(){
for i := 1;i <= 6 ; i ++{
for j := 1;j <= 3; j ++{
fmt.Printf("i的值是%v,j的值是%v\n",i,j)
}
fmt.Println()
}
}
结果:
双重循环内添加一个break循环观察结果判断break作用范围
package main
import (
"fmt"
)
func main(){
for i := 1;i <= 6 ; i ++{
for j := 1;j <= 3; j ++{
fmt.Printf("i的值是%v,j的值是%v\n",i,j)
if i==2 && j==2{//当i=2并且j=2时结束循环
break
}
}
fmt.Println()
}
}
运行结果:
从输出结果可以看出当触发break结束的时内部的for循环
所以break结束的是离他最近的循环
通过加标签的方式可以结束指定for循环
package main
import (
"fmt"
)
func main(){
table://给外层for循环添加一个标签
for i := 1;i <= 6 ; i ++{
for j := 1;j <= 3; j ++{
fmt.Printf("i的值是%v,j的值是%v\n",i,j)
if i==2 && j==2{//当i=2并且j=2时结束循环
break table //结束标签标记的外层循环
}
}
fmt.Println()
}
}
结果: