Java位运算符详解

Java学习笔记 专栏收录该内容
7 篇文章 0 订阅

Java学习笔记----位运算符

位运算符是针对二进制的每一位进行运算的符号,专门对数字0和1操作。Java中位运算符如下

运算符运算范例结果
&按位与0&00
0&10
1&11
|按位或0|00
0|11
1|11
~取反~01
~10
^按位异或0^00
0^11
1^10
<<左移00000010<<200001000
10010011<<201001100
>>右移01100010>>200011000
11100010>>211111000
>>>无符号右移01100010>>>200011000
11…11100010>>>20011…111000

与运算符&

如果两个二进制数都为1,则该位结果为1,否则就为0
例如将6与11进行与运算
在这里插入图片描述
结果为2

或运算符|

如果二进制位上有一个值是1那么结果位1 ,否则为0
将6和11进行或运算
在这里插入图片描述
结果为15

取反~

只对一个操作数进行操作,如果是0结果就为1,如果是1结果就为0
将6取反
在这里插入图片描述
结果为-7

按位异或^

将两个二进制数进行异或运算,如果二进制位相同即为0,不同则为1
将6和11进行按位异或
在这里插入图片描述
结果为13

位运算符 左移<< 右移>>

左移就是将所有二进制位向左移动一位,右边的空位补0,左边移走的舍去
将11左移1位
在这里插入图片描述
结果为22
右移就是将所有二进制位右移一位,左边的空位根据原数的符号补0或1,原来是负数就补1原来是正数就补0
将11右移1位

结果为5

无符号右移 >>>

跟右移一样,不同的是左边的空位补0,不考虑正负
将11无符号右移跟右移结果一致。

  • 2
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值