Go 什么是>>;=操作员do
我正在阅读go中的排序实现,在Go 什么是>>;=操作员do,go,Go,我正在阅读go中的排序实现,在func sort(数据接口)的实现中有一个特殊的循环: 排序实现: 有人能给我解释一下>>=操作符是做什么的吗 编辑:这只是一个简单的转变,然后是做作。我想它在一个循环中的事实困扰着我。检查: 左移整数>无符号整数 移位运算符按移位计数移位左操作数 由右操作数指定。如果需要,它们执行算术移位 左操作数是有符号整数,如果是有符号整数,则逻辑移位 无符号整数。班次计数没有上限。转移 表现为左操作数移位n次,每次移位1 计数n。因此,x>1是最佳值 与x/2相同,但
func sort(数据接口)
的实现中有一个特殊的循环:
排序实现:
有人能给我解释一下>>=操作符是做什么的吗
编辑:这只是一个简单的转变,然后是做作。我想它在一个循环中的事实困扰着我。检查:
左移整数>无符号整数
移位运算符按移位计数移位左操作数
由右操作数指定。如果需要,它们执行算术移位
左操作数是有符号整数,如果是有符号整数,则逻辑移位
无符号整数。班次计数没有上限。转移
表现为左操作数移位n次,每次移位1
计数n。因此,x>1是最佳值
与x/2相同,但向负无穷大方向截断
类似问题:
操作员是右移操作员
>=
是右移运算符和赋值的约定形式:
i >>= 1
这与:
tmp := i >> 1
i = tmp
这与(无需创建新变量)相同:
i>>=1
=i=i>>1
的可能重复
i >>= 1
tmp := i >> 1
i = tmp
i := i >> 1