在Go语言中,运算符用于执行各种操作,如算术运算、逻辑运算、比较等。下面是一些常见的运算符及其用法示例:
算术运算符
- 加法 (
+) - 减法 (
-) - 乘法 (
*) - 除法 (
/) - 取模 (
%)
package mainimport "fmt"func main() {a := 10b := 3fmt.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) // 取模
}

比较运算符
- 等于 (
==) - 不等于 (
!=) - 大于 (
>) - 小于 (
<) - 大于等于 (
>=) - 小于等于 (
<=)
package mainimport "fmt"func main() {x := 5y := 10fmt.Println("x == y:", x == y) // 等于fmt.Println("x != y:", x != y) // 不等于fmt.Println("x > y:", x > y) // 大于fmt.Println("x < y:", x < y) // 小于fmt.Println("x >= y:", x >= y) // 大于等于fmt.Println("x <= y:", x <= y) // 小于等于
}

逻辑运算符
- 逻辑与 (
&&) - 逻辑或 (
||) - 逻辑非 (
!)
package mainimport "fmt"func main() {p := trueq := falsefmt.Println("p && q:", p && q) // 逻辑与fmt.Println("p || q:", p || q) // 逻辑或fmt.Println("!p:", !p) // 逻辑非
}

位运算符
- 按位与 (
&) - 按位或 (
|) - 按位异或 (
^) - 左移 (
<<) - 右移 (
>>)
package mainimport "fmt"func main() {a := 60 // 二进制: 0011 1100b := 13 // 二进制: 0000 1101fmt.Printf("a & b = %d (二进制: %b)\n", a & b, a & b) // 按位与fmt.Printf("a | b = %d (二进制: %b)\n", a | b, a | b) // 按位或fmt.Printf("a ^ b = %d (二进制: %b)\n", a ^ b, a ^ b) // 按位异或fmt.Printf("a << 2 = %d (二进制: %b)\n", a << 2, a << 2) // 左移fmt.Printf("a >> 2 = %d (二进制: %b)\n", a >> 2, a >> 2) // 右移
}

赋值运算符
- 简单赋值 (
=) - 加并赋值 (
+=) - 减并赋值 (
-=) - 乘并赋值 (
*=) - 除并赋值 (
/=) - 取模并赋值 (
%=) - 按位与并赋值 (
&=) - 按位或并赋值 (
|=) - 按位异或并赋值 (
^=) - 左移并赋值 (
<<=) - 右移并赋值 (
>>=)
package mainimport "fmt"func main() {x := 5y := 3x += y // 相当于 x = x + yfmt.Println("x after += y:", x)x -= y // 相当于 x = x - yfmt.Println("x after -= y:", x)x *= y // 相当于 x = x * yfmt.Println("x after *= y:", x)x /= y // 相当于 x = x / yfmt.Println("x after /= y:", x)x %= y // 相当于 x = x % yfmt.Println("x after %= y:", x)
}

这些示例展示了Go语言中常见的运算符及其基本用法。通过这些运算符,你可以进行各种数学计算、逻辑判断以及位级操作。
