赋值运算符
赋值运算符就是将某个运算后的值,赋给指定的变量。
案例演示:
案例演示赋值运算符的基本使用。
1)赋值基本案例
//赋值运算符的使用演示
//var i int
//i = 10 //基本赋值
2)有两个变量, a和b,要求将其进行交换,最终打印结果
func main() {
//有两个变量, a和b,要求将其进行交换,最终打印结果
// a = 9, b = 2, ==> a = 2, b = 9
a := 9
b := 2
fmt.Printf("交换前的情况是 a=%v, b=%v \n", a, b )
//定义一个临时变量
t := a
a = b
b = t
fmt.Printf("交换后的情况是 a=%v, b=%v \n", a, b )
}
3)+= 的使用案例
//复合赋值的操作
a += 12 //等价 a = a + 12
fmt.Println("a=", a)
赋值运算符特点:
1)运算顺序从右往左
2)赋值运算符的左边 只能是变量,右边可以是变量、表达式、常量值
var d int
d = a //=的右边是变量
d = 8 + 2 * 8 //=的右边是表达式
d = test() + 90 // =的右边是表达式
d = 890 // =的右边是常量
3)复合赋值运算符等价于下面的效果
比如:a += 3 等价于 a = a + 3
面试题:
有两个变量, a 和 b,要求将其进行交换,但是不允许使用中间变量,最终打印结果:
var a int = 10
var b int = 20
a = a + b
b = a - b //b = a + b - b ==> b = a
a = a - b // a = a + b - a ==> a = b