平时读源码用到的Java位操作符

  • << 右移
2 << 3 输出 16, 相当于 2的3次方再乘以2
  • >> 左移
2 >> 3 输出 0,相当于2的3次方分之一再乘以2
  • >>> 无符号左移
2 >> 3 输出 0,相当于2的3次方分之一再乘以2
  • | 或,对应值有1为1,没有1为0
0 | 0 = 0
0 | 1 = 1
1 | 1 = 1
  • & 与,对应值有0为0,没有0为1
0 & 0 = 0
0 & 1 = 0
1 & 1 = 1
  • ^ 异或,相同为0,不同为1
0 ^ 0 = 0
0 ^ 1 = 1
1 ^ 1 = 0
  • ~ 取反
~ 0 = 1
~ 1 = 0
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容