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

相关推荐
踏浪无痕4 分钟前
一个 Java 老兵转 Go 后,终于理解了“简单”的力量
后端·程序员·go
m0_635647484 分钟前
pyqt5打包报错:qt.qpa.plugin: Could not load the Qt platform plugin “windows“
开发语言·windows·python·qt·pyqt
汪凝同学要努力4 分钟前
依赖注入 - Spring 在 IoC 容器里查找一个 Bean 的不同方式示例
后端
Tony Bai6 分钟前
告别“If-Else”地狱:OpenFeature 如何重塑 Go 应用的特性开关管理?
开发语言·后端·golang
kylezhao20197 分钟前
C#连接plc之 Model、DAL、BLL、Common三层架构可扩展
开发语言·c#
代码方舟15 分钟前
不仅是评分:利用 Python 解析天远借贷行为验证API 的 T0-T11 借贷时间轴数据
大数据·开发语言·python
夜泉_ly23 分钟前
期末速通 -Java程序设计基础 -理论
java·开发语言
代码扳手24 分钟前
一次线上事故后的反思:Go 项目中如何构建可靠的单元测试
后端·go
Cache技术分享25 分钟前
276. Java Stream API - 使用 flatMap 和 mapMulti 清理数据并转换类型
前端·后端
m0_6113493130 分钟前
什么是副作用(Side Effects)
开发语言·前端·javascript