golang 条件语句中有多条件时多条件的执行顺序和执行效率问题总结 -- if else条件语句 多条件时执行顺序为从左到右

在golang的 条件语句中有多个执行条件时,go的执行顺序为从左到右依次执行, 如果多个条件是 && 条件与的关系,则执行条件的顺序就与程序的效率密切相关,

if else 的多个条件示例:

Go 复制代码
func TestOrderTest(t *testing.T) {

	// 匿名函数定义
	sfn := func(n1, n2 int) int {
		return n1 - n2
	}

	test1(false, sfn)
}

// if 多个条件时的顺序 测试
func test1(isOk bool, sfn func(int, int) int) {

	if isOk && sfn(5, 2) > 3 { // sfn函数不会被执行
		// do what you want

	} else if sfn(5, 2) > 3 && isOk { // sfn会被执行
		// do what you want

	}

}

运行图解

总结: golang中多条件执行顺序是从左到右依次执行,通常我们需要将已知的或者是运行效率高的条件放在左边 ,将运行效率低 的条件放到 条件的右边 ,这样可最大限度的减少不必要的程序执行。 虽然这只是一个小知识点,但是和我们的程序效率密切相关,相同的条件,放左边和放到右边的区别可谓是天上人间!

相关推荐
吕不说几秒前
GEO 实战指南:4 个行业案例拆解内容优化策略
后端
tryCbest3 分钟前
Python之FastAPI 高级特性总结与完整项目实战
开发语言·python·fastapi
wjs20243 分钟前
HTML5 Web SQL 深入解析
开发语言
庞轩px5 分钟前
Java基础概念四连问:==与equals、hashCode约定、接口vs抽象类、深拷贝vs浅拷贝
java·开发语言
MX_93596 分钟前
SpringMVC简介
java·后端·spring
海上彼尚7 分钟前
Nuxt4 官网访问来源统计的实现
开发语言·前端·javascript
紫丁香8 分钟前
高并发面试3
后端·面试·高并发·场景
西门吹牛9 分钟前
RV1126B移植mosquitto并且写C语言调用
c语言·开发语言·json
三*一9 分钟前
mapbox 基于 Turf.js 实现高精度多边形分割(支持带空洞 / 坐标无损)
开发语言·前端·javascript·vue.js·mapbox gl
搞技术的雪中飞11 分钟前
Java Lambda表达式实战讲解:从冗余到高效,解锁开发新姿势
java·开发语言·后端