左移位运算符<<
将一个数左移1位,相当于将该数乘以2;
左移n位相当于将该数乘以2的n次方,即左边数乘以2的右边数幂的积
例. 9<<3 的结果是:72 相当于9*2*2*2
右移位运算符>>
>>两边都是正数时:
将一个数带符号右移1位,相当于将该数除以2(忽略余数);
带符号右移2位,相当于将该数除以4,即左边数除以2的右边数幂的商
例. 9>>1 的结果是:4 相当于9/2(忽略余数)
当左边的数字小于右边的数时,结果为0(两边都是正数)
当左边的数小于0时,结果为:左边数的绝对值除以2的右边数幂的商的相反数-1
例. -9>>2的结果是:-3 相当于-(9/(2*2))-1
当左边的数小于0时,且它的绝对值比右边的数还小时,结果为-1