异或:相同为0,不同为1
***总结:**左移不会考虑正负数,左移可做2的运算,但前提是符号位不变的前提下
右移:正数右移,高位永远补的0,所以右移之后,正数还是正数;负数右移,高位永远补的1,所以右移之后,负数还是负数
无符号右移:高位永远补0。从二进制实现来讲,byte和short都属于低精度的整型,不适用于做无符号右移,会有溢出情况(假如一开始就是负数,最高位为1,但是无符号右移之后,高位补0,就不对了)
异或:相同为0,不同为1
***总结:**左移不会考虑正负数,左移可做2的运算,但前提是符号位不变的前提下
右移:正数右移,高位永远补的0,所以右移之后,正数还是正数;负数右移,高位永远补的1,所以右移之后,负数还是负数
无符号右移:高位永远补0。从二进制实现来讲,byte和short都属于低精度的整型,不适用于做无符号右移,会有溢出情况(假如一开始就是负数,最高位为1,但是无符号右移之后,高位补0,就不对了)