go语言基础 break和contine区别

背景

break和continue是编程语言的标准语法,几乎在所有的语言都有类似的用法。

  • go语言及所有其他编程语言
  • for循环或者其他循环

区别

复制代码
for i := 0; i < 10; i++ {

		if i == 5 {
			continue
		}

		fmt.Println(i)

		for j := 0; j < 3; j++ {
			fmt.Println(strconv.Itoa(j) + "a")
			break
		}

		if i == 7 {
			break
		}
	}

输出

复制代码
复制代码
0
0a
1 
0a
2 
0a
3 
0a
4 
0a
6 
0a
7 
0a

结论

假设一个for循环代表{}内循环N次

  1. continue,代码执行contine的时候,当前的这次循环不继续执行。进入洗一次循环。即代码完整执行次数是N-1次,遇到contine这次执行了contine之前的部分,之后不执行。

  2. break 代码执行到break的时候直接终止for循环

注意

contine和break仅作用域{}内,遇到多重for嵌套,break和contine对{}外部,即上一层for循环时没有作用的。

相关推荐
玛丽莲茼蒿16 小时前
javaSE 集合框架(五)——java 8新品Stream类
java·开发语言
wjs202416 小时前
SQLite Glob 子句详解
开发语言
youyicc16 小时前
Qt连接Pg数据库
开发语言·数据库·qt
量子炒饭大师16 小时前
【C++入门】Cyber底码作用域的隔离协议——【C++命名空间】(using namespace std的原理)
开发语言·c++·dubbo
froginwe1116 小时前
PHP 魔术常量
开发语言
古城小栈16 小时前
Rust 的 validator 库
开发语言·后端·rust
froginwe1117 小时前
《Foundation 选项卡:设计与实现的深入探讨》
开发语言
lsx20240617 小时前
XSLT `<sort>` 标签详解
开发语言
古城小栈17 小时前
Rust 的 redis-rs 库
开发语言·redis·rust
楚Y6同学17 小时前
基于 Haversine 公式实现【经纬度坐标点】球面距离计算(C++/Qt 实现)
开发语言·c++·qt·经纬度距离计算