Go 语言 continue 语句(继续下次循环)

更新时间 2022-03-31 15:03:58

一则或许对你有用的小广告

最近,小哈正在带小伙伴们做前后端分离博客项目,采用技术栈 Spring Boot + Mybatis Plus + Vue 3.2 + Vite 4手把手,前端 + 后端,全栈开发,从 0 到 1 讲解每个功能点开发步骤,1v1 答疑,陪伴式直到项目上线,目前已进入第七章 《文章分类模块开发》中,截止到目前,已更新 105150 字,69 篇内容,讲解图:521 张,还在持续爆肝中,后续还会上新更多项目,已有 200+ 小伙伴加入,欢迎点击围观

Go 语言 中,continue 语句可以结束当前 for 循环 ,进入下一次 for 循环, 代码如下:

package main

import "fmt"

func main()  {

	for i := 0; i < 10; i++ {
		// 当 i 等于 2 时,执行 continue 语句,继续下一次循环
		if i == 2 {
			continue
		}

		fmt.Printf("i: %d\n", i)
	}
}

代码输出如下:

i: 0
i: 1
i: 3
i: 4
i: 5
i: 6
i: 7
i: 8
i: 9

图示:

go语言continue语句代码示例go语言continue语句代码示例

可以看到并没有打印 2, 那是因为当循环到 i 等于 2 时,直接执行了 continue 语句,继续了下一循环。

另外,我们还可以在 continue 语句后添加标签,表示开始标签处的循环:

package main

import "fmt"

func main()  {

	OuterLoop:
		// 外循环
		for i := 0; i < 3; i++ {
			// 内循环
			for j := 0; j < 3; j++ {
				// 当 j 等于 1 时,执行 continue 语句跳转到 OuterLoop 标签处,即跳出至外循环,而不是内循环
				if j == 1 {
					continue OuterLoop
				}
				fmt.Printf("i: %d, j: %d\n", i, j)
			}
		}
}

代码输出如下:

i: 0, j: 0
i: 1, j: 0
i: 2, j: 0

代码中,当 j 等于 1 时,会执行 continue 语句直接跳转到 OuterLoop 标签处,即跳出至外循环继续,而不是内循环。