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种方式, 这个简洁明了,而且效率也高, 这也算是学以致用了!

相关推荐
白宇横流学长33 分钟前
基于SpringBoot实现的垃圾分类管理系统
java·spring boot·后端
tang&2 小时前
【Python自动化测试】Selenium常用函数详解
开发语言·python·selenium
卜锦元3 小时前
Golang项目开发过程中好用的包整理归纳(附带不同包仓库地址)
开发语言·后端·golang
Tony Bai7 小时前
“我曾想付钱给 Google 去工作”—— Russ Cox 深度访谈:Go 的诞生、演进与未来
开发语言·后端·golang
sali-tec7 小时前
C# 基于halcon的视觉工作流-章66 四目匹配
开发语言·人工智能·数码相机·算法·计算机视觉·c#
hnlgzb7 小时前
安卓app开发,如何快速上手kotlin和compose的开发?
android·开发语言·kotlin
无敌最俊朗@8 小时前
STL-deque面试剖析(面试复习4)
开发语言
APIshop8 小时前
用 Python 把“API 接口”当数据源——从找口子到落库的全流程实战
开发语言·python
serendipity_hky8 小时前
【SpringCloud | 第2篇】OpenFeign远程调用
java·后端·spring·spring cloud·openfeign
Java Fans8 小时前
Qt Designer 和 PyQt 开发教程
开发语言·qt·pyqt