Go - 赋值运算符
下表列出了 Go 语言支持的所有赋值运算符 −
| 运算符 | 描述 | 示例 |
|---|---|---|
| = | 简单赋值运算符,将右侧操作数的数值赋给左侧操作数 | C = A + B 将 A + B 的值赋给 C |
| += | 加法并赋值运算符,将右侧操作数加到左侧操作数上,并将结果赋给左侧操作数 | C += A 等价于 C = C + A |
| -= | 减法并赋值运算符,从左侧操作数中减去右侧操作数,并将结果赋给左侧操作数 | C -= A 等价于 C = C - A |
| *= | 乘法并赋值运算符,将右侧操作数乘以左侧操作数,并将结果赋给左侧操作数 | C *= A 等价于 C = C * A |
| /= | 除法并赋值运算符,用左侧操作数除以右侧操作数,并将结果赋给左侧操作数 | C /= A 等价于 C = C / A |
| %= | 取模并赋值运算符,使用两个操作数取模,并将结果赋给左侧操作数 | C %= A 等价于 C = C % A |
| <<= | 左移并赋值运算符 | C <<= 2 等价于 C = C << 2 |
| >>= | 右移并赋值运算符 | C >>= 2 等价于 C = C >> 2 |
| &= | 按位与并赋值运算符 | C &= 2 等价于 C = C & 2 |
| ^= | 按位异或并赋值运算符 | C ^= 2 等价于 C = C ^ 2 |
| |= | 按位或并赋值运算符 | C |= 2 等价于 C = C | 2 |
示例
尝试以下示例以了解 Go 编程语言中所有可用的赋值运算符 −
package main
import "fmt"
func main() {
var a int = 21
var c int
c = a
fmt.Printf("第 1 行 - = 运算符示例,c 的值为 %d\n", c )
c += a
fmt.Printf("第 2 行 - += 运算符示例,c 的值为 %d\n", c )
c -= a
fmt.Printf("第 3 行 - -= 运算符示例,c 的值为 %d\n", c )
c *= a
fmt.Printf("第 4 行 - *= 运算符示例,c 的值为 %d\n", c )
c /= a
fmt.Printf("第 5 行 - /= 运算符示例,c 的值为 %d\n", c )
c = 200;
c <<= 2
fmt.Printf("第 6 行 - <<= 运算符示例,c 的值为 %d\n", c )
c >>= 2
fmt.Printf("第 7 行 - >>= 运算符示例,c 的值为 %d\n", c )
c &= 2
fmt.Printf("第 8 行 - &= 运算符示例,c 的值为 %d\n", c )
c ^= 2
fmt.Printf("第 9 行 - ^= 运算符示例,c 的值为 %d\n", c )
c |= 2
fmt.Printf("第 10 行 - |= 运算符示例,c 的值为 %d\n", c )
}
编译并执行上述程序,将产生以下结果 −
Line 1 - = Operator Example, Value of c = 21 Line 2 - += Operator Example, Value of c = 42 Line 3 - -= Operator Example, Value of c = 21 Line 4 - *= Operator Example, Value of c = 441 Line 5 - /= Operator Example, Value of c = 21 Line 6 - <<= Operator Example, Value of c = 800 Line 7 - >>= Operator Example, Value of c = 200 Line 8 - &= Operator Example, Value of c = 0 Line 9 - ^= Operator Example, Value of c = 2 Line 10 - |= Operator Example, Value of c = 2