java位运算之左移&右移&无符号右移&与&异或
- <<:左移运算符:左操作数按位左移右操作数指定的位数。移动得到的右边空位自动充零,注意包括符号位,也就是说左移运算符有可能改变一个数的正负。
- >>:右移运算符:左操作数按位右移右操作数指定的位数。移动得到的左边空位自动充零,但是表示符号的最高位除外,正数右移高位补0,负数右移高位补1。
- >>>:无符号右移运算符:左操作数按位右移右操作数指定的位数。移动得到的左边空位自动充零,无论是正数还是负数,最高位通通补0。
位运算与(&)常用准则
- n&1=1,则n二进制最后一位为1;
- n&1=0,则n二进制最后一位为0。
位运算异或(^)常用准则
- 任何数与0异或结果都为自身,
- 任何数与自身异或结果都为0,
- 异或运算符合交换律和结合律。