JAVA位运算符与移位运算

Posted 白客C

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA位运算符与移位运算相关的知识,希望对你有一定的参考价值。

位运算符

java中有4个位运算符,分别是“按位与&、按位或|、按位异或^、按位取反~”,他们的运算规则是:

  按位与& : 两位全为1,结果为1

  按位或|  : 两位一个为1,结果为1

  按位异或^ : 两位一个为0,一个为1,结果为1

  按位取反~ : 0 -> 1 , 1 -> 0

 

实例

~2 = -3

源码:00000010

反码:11111101(最高位也取反)

补码:11111100 (-1)

反码:10000011(最高位不取反)

所有得-3

 

//如果是复数记得先把源码转成补码

2&3  = 2

2|3 = 3

2^3 = 1

 

移位运算

java中有3个移位运算符,分别为是算术右移>>、算术左移<<、逻辑右移>>>,运算规则:

  算术右移:低位溢出,符号位不变,并用符号位补溢出的高位

  算术左移:符合为不变,低位补0

  逻辑右移:低位溢出,高位补0

 

实例

1>>2 = 0

1<<2 = 4

3>>>2 = 0

 

以上是关于JAVA位运算符与移位运算的主要内容,如果未能解决你的问题,请参考以下文章

Java中的位运算

java位运算

java中的位运算符及其用法。

Java基础-位运算

韩顺平 java笔记 第20讲 二进制 位运算 移位运算

Java中的位运算符