按位运算符

day2

按位运算符

二进制位运算

a = 1010 0101;

b = 0111 0011;

~取反运算

b = 0111 0011;

~b = 1000 1100;//结果

注:1变为0,0变为1.

 

按位与&运算:

a = 1010 0101;

b = 0111 0011;

a&b = 0010 0001;

注:只有两个运算对象相应位置都为1时,结果才为1,

(只两个运算对象相应位置都为真时,才为真)

 

按位或 | 运算

a = 1010 0101;

b = 0111 0011;

a|b= 1111 0111;//结果

注:运算对象相应位置有1,结果就是1;

(只两个运算对象相应位置有一个为真时,就为真)

 

按位异或^运算

a = 1010 0101;

b = 0111 0011;

a^b= 1101 0110;//结果

注:运算对象相应位置相同位0,不同为1。

 

移位运算符

左移:<<

int a = 4;
a = a<<2;
System.out.println("a="+a);

运算结果 16;

左移是运算对象乘以2的n次方;

 

右移:>>

int a = 8;
a = a>>2;
System.out.println("a="+a);

运算结果 2;

对象为正时,右移是除以2的n次方;

posted @ 2020-07-28 01:38  神也没办法  阅读(186)  评论(0编辑  收藏  举报