>>在Go语言中是什么意思?

我正在寻找有关Google Go语言的信息。在“ A Go of Go”中,他们具有以下代码:

const (

Big = 1<<100

Small = Big>>99

)

但是什么<<>> 意味着什么呢?

您可以在http://tour.golang.org/#14上查看所有代码

回答:

它们是按位移位运算符。x <<

y表示 x ×2 y ,而x >> y表示 x ×2 -y 或等效地x÷2

y。这些运算符通常用于操作值的二进制表示形式,就像十进制的10的幂一样,乘或除以2的幂分别具有使数字“左移”或“右移”的效果:

// Left shift:

13 * 2 == 26 // decimal

1101 * 10 == 11010 // binary (13 is 8 + 4 + 0 + 1)

// Right shift (brackets denote discarded portion):

13 / 2 == 6[.5] // decimal

1101 / 10 == 110[.1] // binary

由于您是对整数进行运算,并且右移通常会产生分数值,因此有两种方法可以处理右舍入的结果如何取整。在Go中,右移是无符号值的逻辑移位,而有符号值的算术移位。逻辑移位总是四舍五入,而算术移位总是四舍五入,即-∞。

以上是 &gt;&gt;在Go语言中是什么意思? 的全部内容, 来源链接: utcz.com/qa/409754.html

回到顶部