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\nb=%v", a, b)
}

運行的結果
a=20
b=10

  

 

方法二:

Go 語言提供了大多數語言不支持的多重賦值,這使得變量的交換變得十分簡單。下面通過一個例子來了解 Go 語言的多重賦值:

func main() {
   fmt.Println("方法一>>:") var i int = 2 var j int = 3 fmt.Printf("Before i=%v j=%v\n", i, j) i, j = j, i fmt.Printf("After i=%v j=%v\n", i, j) } 運行結果 方法一>>: Before i=2 j=3 After i=3 j=2

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM