变量的交换在我们对数据进行排序时是必须要用到的技术, 今天就给大家介绍2种go语言中交换变量的方式。
1. 使用传统方式定义一个中间变量来进行变量的交换
// 文件名 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
}
2. 利用golang中的一个很特别变量的定义方式,即 我们可以使用逗号来批量定义和赋值变量来进行变量的交换,这个在其他语言里面是没有的。
示例:
// 文件名 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种方式, 这个简洁明了,而且效率也高, 这也算是学以致用了!