本文主要是介绍Java中的位运算符,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
>
>
>>
>>表示带符号右移,如果该数为正,则高位补0,若为负数,则高位补1;
>
>
>
>>>
>>>表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0。
x>>n表示x向右移2)
例子:
- 5>>2
表示5向右移2位.
5的二进制表示为:00000000 00000000 00000000 00000101
向右移2位,由于考虑到是正数,左边空出来的位用0补变为00000000 00000000 00000000 0000 0001
结果为1 - -5>>2
-5的二进制为11111111 11111111 11111111 11111011
向右移2位,由于考虑到是负数,左边空出来的位用1补变为11111111 11111111 11111111 11111110
负数还原成10进制:保留符号位取反加1
- 取反:10000000 00000000 00000000 00000001
- 加1: 10000000 00000000 00000000 00000010
结果为:-2
- 5>>>2
【同5>>2】 - -5>>>2
左边空出来的位用0补变为00111111 11111111 11111111 11111110
结果就是这个二进制所代表的的值,即8455454206
这篇关于Java中的位运算符的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!