go 运算符
在 Go 语言中,运算符用于执行各种操作。Go 支持以下几类运算符:
算术运算符用于执行基本的数学运算,如加法、减法、乘法和除法。
+
a + b
-
a - b
*
a * b
/
a / b
%
a % b
++
a++
--
a--
package main import "fmt" func main() { a := 10 b := 3 fmt.Println("a + b =", a + b) fmt.Println("a - b =", a - b) fmt.Println("a * b =", a * b) fmt.Println("a / b =", a / b) fmt.Println("a % b =", a % b) a++ fmt.Println("a++ =", a) b-- fmt.Println("b-- =", b) }
关系运算符用于比较两个值,结果是布尔值 (true 或 false)。
true
false
==
a == b
!=
a != b
>
a > b
<
a < b
>=
a >= b
<=
a <= b
package main import "fmt" func main() { a := 10 b := 20 fmt.Println("a == b =", a == b) fmt.Println("a != b =", a != b) fmt.Println("a > b =", a > b) fmt.Println("a < b =", a < b) fmt.Println("a >= b =", a >= b) fmt.Println("a <= b =", a <= b) }
逻辑运算符用于连接两个或多个条件,结果是布尔值。
&&
a && b
||
a || b
!
!a
package main import "fmt" func main() { a := true b := false fmt.Println("a && b =", a && b) fmt.Println("a || b =", a || b) fmt.Println("!a =", !a) }
位运算符用于按位操作数。
&
a & b
|
a | b
^
a ^ b
<<
a << b
>>
a >> b
package main import "fmt" func main() { a := 60 // 60 = 0011 1100 b := 13 // 13 = 0000 1101 fmt.Println("a & b =", a & b) // 12 = 0000 1100 fmt.Println("a | b =", a | b) // 61 = 0011 1101 fmt.Println("a ^ b =", a ^ b) // 49 = 0011 0001 fmt.Println("a << 2 =", a << 2) // 240 = 1111 0000 fmt.Println("a >> 2 =", a >> 2) // 15 = 0000 1111 }
赋值运算符用于将右侧的值赋给左侧的变量。
=
a = b
+=
a += b
-=
a -= b
*=
a *= b
/=
a /= b
%=
a %= b
<<=
a <<= b
>>=
a >>= b
&=
a &= b
|=
a |= b
^=
a ^= b
package main import "fmt" func main() { a := 10 b := 5 a += b // a = a + b fmt.Println("a += b:", a) a -= b // a = a - b fmt.Println("a -= b:", a) a *= b // a = a * b fmt.Println("a *= b:", a) a /= b // a = a / b fmt.Println("a /= b:", a) a %= b // a = a % b fmt.Println("a %= b:", a) }
Go 语言中还有一些特殊的运算符,比如指针运算符和复合运算符。
&a
*p
package main import "fmt" func main() { a := 10 p := &a // 取变量 a 的地址 fmt.Println("a:", a) fmt.Println("p:", p) fmt.Println("*p:", *p) // 解引用,获取 p 指向的值 *p = 20 // 通过指针修改 a 的值 fmt.Println("a:", a) }
Go 语言提供了丰富的运算符,可以进行各种操作。理解和掌握这些运算符的用法,是编写高效 Go 代码的基础。通过上述示例,可以对 Go 语言中的各类运算符有一个全面的了解,并能在实际编程中灵活运用。