break 跳出循环
案例:
package main
import(
"fmt"
"math/rand"
"time"
)
func main(){
var num int = 0
for {
//时间戳 返回一个1970:01:01 0:0:0到至今的一个时间戳
rand.Seed(time.Now().UnixNano())
//随机数
n := rand.Intn(100) + 1
fmt.Println("n = ",n)
num++
if(n == 99){
break
}
}
fmt.Printf("一共循环了%d次",num)
}
多层 循环中的break 跳出最近的for循环
for i := 0; i <= 4; i++{
for j := 0; j <= 10; j++{
if j == 3{
// break
}
fmt.Println("j =",j)
}
}
结果:
j = 1
j = 2
j = 0
j = 1
j = 2
j = 0
j = 1
j = 2
j = 0
j = 1
j = 2
j = 0
j = 1
j = 2
有标签的break 跳出指定for循环 标签名称可以随意声明
//break 加标签 使用哪个标签就会直接跳出哪个循环
lable1:
for i := 0; i <= 4; i++{
// lable2:
for j := 0; j <= 10; j++{
if j == 3{
// break
break lable1 //在break 后面加上哪一层对应的标签,就会直接跳出哪一层
}
fmt.Println("j =",j)
}
}
结果:
j = 0
j = 1
j = 2
continue 跳过当前循环
案例:
package main
import(
"fmt"
)
func main(){
for i := 0; i <= 4; i++{
for k := 0; k <= 10; k++{
if k == 2 {
continue
}
fmt.Println("k = ",k)
}
}
}
结果:
4组
k = 0
k = 1
k = 3
k = 4
k = 5
k = 6
k = 7
k = 8
k = 9
k = 10