点击名片关注 阿尘blog,一起学习,一起成长
Go语言中的运算符用于执行各种操作,如算术运算、比较、逻辑运算等。下面是Go语言中各类运算符的详细讲解,包括代码示例、代码说明以及使用注意事项。
1 算术运算符
加法运算符 +
go
a := 5
b := 3
sum := a + b // sum 的值为 8
减法运算符 -
go
a := 5
b := 3
difference := a - b // difference 的值为 2
乘法运算符 *
go
a := 5
b := 3
product := a * b // product 的值为 15
除法运算符 /
go
a := 10
b := 2
quotient := a / b // quotient 的值为 5
取模运算符 %
go
a := 10
b := 3
remainder := a % b // remainder 的值为 1
递增运算符 ++
go
a := 5
a++ // a 的值变为 6
递减运算符 --
go
a := 5
a-- // a 的值变为 4
注意事项: 除法运算符 / 在Go语言中进行整数除法时,结果也是整数,不会进行小数部分的计算。 在进行算术运算时,如果操作数中有浮点数,则结果也是浮点数。
2 比较运算符
等于运算符 ==
go
a := 5
b := 5
if a == b {
fmt.Println("a 等于 b")
}
不等于运算符 !=
go
a := 5
b := 3
if a != b {
fmt.Println("a 不等于 b")
}
大于运算符 >
go
a := 5
b := 3
if a > b {
fmt.Println("a 大于 b")
}
大于等于运算符 >=
go
a := 5
b := 5
if a >= b {
fmt.Println("a 大于等于 b")
}
小于运算符 <
go
a := 3
b := 5
if a < b {
fmt.Println("a 小于 b")
}
小于等于运算符 <=
go
a := 5
b := 5
if a <= b {
fmt.Println("a 小于等于 b")
}
注意事项: 比较运算符的结果是一个布尔值,即 true 或 false。 在进行比较运算时,操作数的类型必须相同或可以进行类型转换。
3 逻辑运算符
逻辑与运算符 &&
go
a := true
b := false
if a && b {
fmt.Println("a 和 b 都为真")
}
逻辑或运算符 ||
go
a := true
b := false
if a || b {
fmt.Println("a 或 b 至少有一个为真")
}
逻辑非运算符 !
go
a := true
if !a {
fmt.Println("a 为假")
}
注意事项: 逻辑运算符的结果也是一个布尔值。 在进行逻辑运算时,操作数的类型必须是布尔类型。 位运算符 位与运算符 &
go
a := 60 // 二进制表示为 0011 1100
b := 13 // 二进制表示为 0000 1101
result := a & b // 二进制表示为 0000 1100,即十进制的 12
4 位或运算符 |
go
a := 60 // 二进制表示为 0011 1100
b := 13 // 二进制表示为 0000 1101
result := a | b // 二进制表示为 0011 1101,即十进制的 61
位异或运算符 ^
go
a := 60 // 二进制表示为 0011 1100
b := 13 // 二进制表示为 0000 1101
result := a ^ b // 二进制表示为 0011 0001,即十进制的 49
位取反运算符 ^(单独使用时)
go
a := 60 // 二进制表示为 0011 1100
result := ^a // 二进制表示为 1100 0011,即十进制的 -61(注意符号位)
左移运算符 <<
go
a := 2 // 二进制表示为 0000 0010
result := a << 1 // 二进制表示为 0000 0100,即十进制的 4
右移运算符 >>
go
a := 8 // 二进制表示为 0000 1000
result := a >> 1 // 二进制表示为 0000 0100,即十进制的 4
注意事项: 位运算符主要用于处理整数的二进制位。 左移一位相当于乘以2,右移一位相当于除以2。
扫描二维码关注阿尘blog,一起交流学习