java 位运算

1、java的移运算

 1)>> :算术右移(最高位补上符号位1|0) 

 2)<<:左移(低位补0)

 3)>>>:逻辑右移(高位补0)

注意:1)从数学意义上来讲,算术左移1位表示原值乘以2.(在没有溢出的情况下,如果有溢出,从位的角度来看,没有错,从数学角度来看,结果就不是预期的结果)

            2)从数学意义上来讲,右移1位表示原值除以2

.          3)如果移动的位数n>=32  则实际移动的位数为n%32

2、&:两个位数同为1,结果才为1

3、~求反

4、^:不带进位的加法运算

  性质:1)a^a=0 :判断两个数是否相等,比较高效

              2)a^b^a=b:交换两个数

5、|:有一个1,结果就为1

6、java数据类型转换

小 转 大:在扩展位上补上小(数据类型)的符号位

大 转 小:取大(数据类型)的低位(如 long -》int ,则取long的低32位)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值