golang中变量交换的2种方式

变量的交换在我们对数据进行排序时是必须要用到的技术, 今天就给大家介绍2种go语言中交换变量的方式。

  1. 使用传统方式定义一个中间变量来进行变量的交换
Go 复制代码
// 文件名 demo1.go
package demo01

import "fmt"


func ExampleDemo02() {
	//常规方式进行变量交换, 需要定义中间变量 tmp
	var a = 2
	var b = 3
	var tmp =0
	tmp = a
	a = b
	b = tmp

	fmt.Printf("a =%v, b =%v \n", a, b)
	// Output: a =3, b =2
}
  1. 利用golang中的一个很特别变量的定义方式,即 我们可以使用逗号来批量定义和赋值变量来进行变量的交换,这个在其他语言里面是没有的。

示例:

Go 复制代码
// 文件名 demo1.go
package demo01

import "fmt"

func ExampleDemo01() {
	var a = 1
	var b = 2
	a, b = b, a // 利用golang批量定义赋值变量的特性直接交换a,b的值
	fmt.Printf("a =%v, b =%v\n", a, b)
	// Output: a = 2, b = 1
}

总结: 建议大家使用第2种方式, 这个简洁明了,而且效率也高, 这也算是学以致用了!

相关推荐
Zhang345几秒前
深入理解 Java:从基础到进阶的全方位解析
后端
用户4221626741554 分钟前
Go八股文——类型断言
后端·面试
brzhang5 分钟前
效率神器!TmuxAI:一款无痕融入终端的AI助手,让我的开发体验翻倍提升
前端·后端·算法
用户4221626741556 分钟前
Go语言八股文——map
后端·面试
用户4221626741556 分钟前
Go语言八股文——Slice
后端·面试
Java水解12 分钟前
详细分析SpringBootTest中的测试类(附Demo)
spring boot·后端
前端.火鸡21 分钟前
使用wavesurferJs实现录音音波效果
开发语言·前端·javascript
zh_xuan35 分钟前
java Optional
java·开发语言
程序员韩立41 分钟前
现代全栈开发:Next.js与Node.js实战指南
前端·后端
盐烟42 分钟前
C语言-函数练习1
c语言·开发语言·笔记