关于 Golang 中的 “<<" 和 ">>”
在进行《A Tour of Go》这个教程网站时,出现了下面这种我不熟悉的描述方法,所以我进行了调查。
MaxInt uint64 = 1<<64 - 1
fmt.Printf("Value: %v", MaxInt)
从《A Tour of Go》的Basic types(11/17)摘录
「や」的意思是什么?
「<<や>>」是一种被称为”位运算符”的东西。
通过使用”位运算符”,可以将数字转换为二进制表示时,可以向左(<<)或向右(>>)位移。
1<<64 – 1的计算结果 (Yī shì 64 – 1 de
1 << 64 可以将1作为2进制数向左移动64位。
然后,将左移了64位的1转换成10进制,并计算-1的结果,得到的MaxInt值为18446744073709551615。
Value: 18446744073709551615
我参考了一篇文章。
Go语言中的 “>>” 表示什么意思?- teratail