">>1"与"/2"的区别 (右移1位运算与除以2运算的区别)
原始数据:N
N:非负数时, >>1和/2的运算结果是一样的。 10>>1=5 ; 10/2=5 0>>1=0 ;0/2=0
N:负数且是偶数,>>1和/2的运算结果是一样的。-10>>1=-5; -10/2=-5
N:负数且是奇数,>>1和/2的运算结果是不同的。 -5>>1=-3; -5/2=(int)(-2.5)=-2
即:N位负奇数时,>>1:向下取整 /2:向上取整。
[可以使用系统自带计算器,选择"程序员"模式,进行验证]

浙公网安备 33010602011771号