java and运算_java位移运算符|And&,操作二进制

在java中 逻辑运算符有四种:&,  |,  &&,  ||

&: 如果第一个条件是fasle,还会判断第二个条件,只要有一个条件不满足,结果就返回false;

&&:如果第一个条件就不满足,则直接返回false,不会去判断第二个条件;

|和||跟上面是一样的意思

Java中基本类型:

int数据类型:byte(8bit ,-128~127)        short(16 bit)       int(32 bit)   long(64 bit)

float数据类型: 单精度(32 bit  float)、双精度(64 bit  double)

boolean类型:  true  false

char数据类型:unicode字符(16位)

对应的类类型:

Integer、Float、Boolean、Character、Double、Short、Byte、Long

二进制数据如果第一位是1,则是负数;第一位是0,则是正数

举个例子(-1和255)00000001

-1转换成二进制(byte类型):11111111

1转换成二进制(int类型):00000000-00000000-00000000-00000001

转换成二进制要先取反,然后+1,(11111111-11111111-11111111-11111111)

如果把负数的二进制转换成十进制数据:首先要-1,然后取反 -(00000000-00000000-00000000-00000001),结果就是-1;

255转换成二进制(int类型):00000000-00000000-00000000-11111111

正数的二进制转换成十进制则不用取反:1*(2*1)+1*(2*2)+1*(2*2*2)....... = 255;

System.out.println("a>>b = "+3>>1);

System.out.println("a<

System.out.println("a&b = "+3&1);

System.out.println("a|b = "+3|1);

System.out.println("a^b = "+a^b);

a = 0011

b = 0001

a = 3

b = 1

运行结果是:

a>>b = 1   :0001

a<

a & b = 1   :0001

a | b = 3  :0011

a ^ b = 2     :0010

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值