Golang中交换两个变量的值,但是不允许使用第三个变量?

Posted egrep

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang中交换两个变量的值,但是不允许使用第三个变量?相关的知识,希望对你有一定的参考价值。

package main

import (
	"fmt"
)

func main() {
	//声明两个变量并且赋值  a=10 b=20 交换后的值是a=20 b=10 并且,不可以使用第三个变量
	a := 10
	b := 20
	//1.首先a=a+b的值 10+20=30 
	a = a + b
	// 这个时候a的值发生改变但是b的值没有  b=a-b
	b = a - b  // b = a -b ==>> b = a + b -b 等于a的值 b=10
	a = a - b  // a的值未发生改变还是原来的30  a - b == 30 - 10 =20 等于a=20 这里的b现在是10是a的值 
	fmt.Printf("a=%v
b=%v", a, b)
}

运行的结果
a=20
b=10

  

以上是关于Golang中交换两个变量的值,但是不允许使用第三个变量?的主要内容,如果未能解决你的问题,请参考以下文章

Java不借助第三方变量交换两个变量的值

交换两个变量,不第三方变量

不使用中间变量,交换变量的值。求一个数二进制中1的个数

Python两个变量的值进行交换的方法

编程题不引入第三个变量,而交换两个变量的值

交换两个变量的值