Go语言位运算符

Go语言位运算符教程

Golang 中,位运算符主要是用于 数值类型 的二进制的运算。

案例

左移运算

使用 << 运算符,实现左移运算

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //使用 << 运算符,实现按位左移运算 var a = 111 var b = a << 3 fmt.Println("b = ", b) }

程序运行后,控制台输出如下:

17 golang operator.png

首先,我们定义了一个 变量 a 并赋值为 111。 接着,我们使用左移运算符 <<,将变量 a 的左移三位,并将结果赋值给 b。

右移运算

使用 >> 运算符,实现右移运算

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //使用 >> 运算符,实现右移运算 var a = 111 var b = a >> 3 fmt.Println("b = ", b) }

程序运行后,控制台输出如下:

18 golang operator.png

首先,我们定义了一个变量 a 并赋值为 111。 接着,我们使用右移运算符 >>,将变量 a 的右移三位,并将结果赋值给 b。

Go语言位运算符总结

在 Golang 中,位运算符主要是用于数值类型的二进制的运算。按位与的运算规则是,如果两数对应的二进制位都为 1,那么结果为 1, 否则结果为 0。

按位或的运算规则是如果两数对应的二进制位有一个为 1,那么结果为 1, 否则结果为 0。按位异或的运算规则是如果两数对应的二进制位不同,那么结果为 1, 否则结果为 0。

左移的运算规则是左移 N 位,就是乘以 2 的 N 次方。右移的运算规则是右移 N 位,就是除以 2 的 N 次方。